prizrak56
Prizrak

 
Уровень 3

  Торгую в компаниях:


Группа "Стол заказов MQL"

Рейтинг 2081



РЕКОМЕНДУЮ



Советник MT4 по паттерну "рельсы"

Ищу поручителя для заказа

Техническое задание
Для нахождения паттерна рельсы используется индикатор Find Pattern Rails (https://www.mql5.com/ru/market/product/13693#) (можно другой индикатор)
Таймфрейм любой.
При появлении паттерна выставляется стоп ордер по правилам паттерна рельсы, на конец 2 свечи, если медвежья свеча то на нижний край свечи sell stop, если бычья свеча, то на верхний край buy stop. Значения TP и SL выставляются в настройках в пунктах. При SL начинает работать мартингейл и на следующем ордере лот увеличивается на коэффициент указанный в настройках, и т.д. до получения TP. При достижении TP лот сбрасывается на первоначальный
Настройки:
ММ- 100
Лот — 0,01 (т.е. 0,01 на каждые 100$ депозита)
К- Коэф умножения лота
Тейк- в пунктах
Стоп — в пунктах
Magic
Slippage
  • 0
  • Просмотров: 3676
  • 12 апреля 2017, 13:33
  • prizrak56
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Здравствуйте!
Следующая запись в группе  
советник
12 апреля 2017
12 апреля 2017

Комментарии (17)

комментарий был удален 2017-04-13 08:35:55 prizrak56

+
0
avatar

  27  Oxy Сообщений: 3418 - ..ιllιlι.lι.ιllι.ιlι..

  • 12 апреля 2017, 15:45
+
0
*girlcry* 
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 12 апреля 2017, 16:02
+
0
Такой индикатор на мт4 не работает и в свободном доступе его нет. Так что своя подправленная задумка неплохо реализовала себя.
Тебе могут написать бесплатно советника, только если ты 3 уровня или выше и только для мт4.
Нужно читать правила.
Так же согласно правилам другие участники имеют право предложить свои услуги по написанию и использованию советника, чем я и воспользовался.
*zapoy* 
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 12 апреля 2017, 16:07
+
0
«Нужно читать правила»
Я читал правила там написано
«Внимание! Одно из основных условий — заказы принимаются в бесплатную работу только с 3-го уровня и не более 1 заказа в месяц. Однако, даже если у Вас нет нужного уровня, Вы можете воспользоваться поручительством другого пользователя (см. пункт 1.7)»
я самым первым предложением это пункт выполнил, так что я ничего не нарушил!
avatar

  3  prizrak56 Автор Сообщений: 19 - Prizrak

  • 13 апреля 2017, 08:45
+
0
На самом деле нарушили, когда разместили заказ от своего имени, а поручительство в силе, если за вас размещает заказ пользователь третьего уровня и выше, но он тогда теряет своё право размещать ещё заказ в текущем месяце.
Всё это похоже на бюрократию, но правило-есть-правило.
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 13 апреля 2017, 09:21
+
0
Что я нарушил? Прочитайте правила, все по букве закона:
п.1.7 Если пользователь не имеет собственного права на заказ (уже делал заказ в текущем месяце или имеет низкий уровень), то он может воспользоваться поручительством других пользователей, который имеют право сделать заказ. Для этого заказчик должен опубликовать заказ в Столе заказов. И указать в заказе, что он ищет поручителя для этого заказа. Пользователь, имеющий право сделать заказ, в комментариях к заказу указывает, что он «согласен выступить поручителем», при этом поручитель сам лишается права на новый заказ в данном месяце.
Важно! Поручителю должен быть понятен и интересен заказ, он не должен быть склонён к поручительству путем уговоров, материальных или других стимулов. В противном случае поручительство признается недобросовестным.
avatar

  3  prizrak56 Автор Сообщений: 19 - Prizrak

  • 13 апреля 2017, 11:16
+
0
Да нормально вы ищите. Просто вас тут никто не знает, поэтому шансов найти поручителя мало. Приходите в чат, познакомитесь со многими участниками…
avatar

  27  Oxy Сообщений: 3418 - ..ιllιlι.lι.ιllι.ιlι..

  • 13 апреля 2017, 13:14
+
0
Вот видите нашелся поручитель! Тут главное для чего наверное и был придуман данный пункт правил не то, что тебя не знают, а предложенная идея.Поиск грааля так сказать, в него все верят!:) ;) Рад что stepmega поддерживает идею!*good* 
avatar

  3  prizrak56 Автор Сообщений: 19 - Prizrak

  • 14 апреля 2017, 08:09
+
0
Если вдруг AM2 не увидит про поручителя (если не просмотрит этот топик еще раз) — вы ему в личку напишите.
avatar

  27  Oxy Сообщений: 3418 - ..ιllιlι.lι.ιllι.ιlι..

  • 14 апреля 2017, 09:17
+
0
Когда у вас будет 3-й уровень, напомните.
avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 12 апреля 2017, 17:18
+
+3
ручаюсь за него )))
дабы соблюсти нормы Правил — согласен выступить поручителем
Редактирован: 13 апреля 2017, 22:14
avatar

  7  stepmega Сообщений: 88

  • 13 апреля 2017, 21:33
+
0
avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 14 апреля 2017, 17:50
+
0
Сейчас по паттерну прописана вся куча условий:

Советник анализирует соотношение размера тела свечи в размеру самой свечи и если тело свечи большое, т.е. 70 и более процентов от всей свечи (процент соотношения размера тела можно выставить в настройках чтобы посмотреть результаты с большим минимальным процентом пропорции), то дальше он анализирует вторую свечу и если она закрывается в противоположном направлении и тоже с крупным телом (70% и более), то это рельсы и выставляется отложка на экстримум свечи, которая удаляется через 5 свечей.


здесь также нужно будет учесть размер свечи в пунктах а то рельсы будут очень маленькими



//+------------------------------------------------------------------+
//|                                                        Rails.mq4 |
//|                                              Copyright 2017, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

//--- Inputs
extern double Lots       = 0.1;      // лот
extern double KLot       = 1;        // умножение лота
extern double MaxLot     = 5;        // максимальный лот
extern int StopLoss      = 50;       // лось
extern int TakeProfit    = 70;       // язь
extern int Expiration    = 5;        // истечение ордера
extern int Delta         = 100;      // дельта
extern int Points        = 30;       // разница
extern int Body          = 50;       // тело свечи
extern int Procent       = 70;       // процент для тела свечи
extern int Slip          = 30;       // реквот
extern int Magic         = 123;      // магик

datetime t=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   Comment("");
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double Lot()
  {
   double lot=Lots;

   if(OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY))
     {
      if(OrderProfit()<0)
        {
         lot=OrderLots()*KLot;
        }
     }
   if(lot>MaxLot)lot=Lots;
   return(lot);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutOrder(int type,double price)
  {
   int r=0;
   color clr=Green;
   double sl=0,tp=0;

   if(type==1 || type==3 || type==5)
     {
      clr=Red;
      if(StopLoss>0) sl=NormalizeDouble(price+StopLoss*Point,Digits);
      if(TakeProfit>0) tp=NormalizeDouble(price-TakeProfit*Point,Digits);
     }

   if(type==0 || type==2 || type==4)
     {
      clr=Blue;
      if(StopLoss>0) sl=NormalizeDouble(price-StopLoss*Point,Digits);
      if(TakeProfit>0) tp=NormalizeDouble(price+TakeProfit*Point,Digits);
     }

   r=OrderSend(NULL,type,Lot(),NormalizeDouble(price,Digits),Slip,sl,tp,"",Magic,TimeCurrent()+Expiration*3600,clr);
   return;
  }
//+------------------------------------------------------------------+
//| Подсчет ордеров по типу                                          |
//+------------------------------------------------------------------+
int CountOrders(int type)
  {
   int count=0;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==type) count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int UpRail()
  {
   int up=0;
   if(MathAbs(Open[2]-Close[1])<Points*Point && MathAbs(Close[2]-Open[1])<Points*Point && Close[1]-Open[1]>0
   && MathAbs(Close[1]-Open[1])>Body*Point
   && (Open[2]-Close[2])/(High[2]-Low[2])>Procent*0.01 && (Close[1]-Open[1])/(High[1]-Low[1])>Procent*0.01) up=1;
   return(up);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int DnRail()
  {
   int up=0;
   if(MathAbs(Close[2]-Open[1])<Points*Point && MathAbs(Open[2]-Close[1])<Points*Point && Close[1]-Open[1]<0
   && MathAbs(Close[1]-Open[1])>Body*Point
   && (Close[2]-Open[2])/(High[2]-Low[2])>Procent*0.01 && (Open[1]-Close[1])/(High[1]-Low[1])>Procent*0.01) up=1;
   return(up);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   if(t!=Time[0] && (CountOrders(0)<1 && CountOrders(1)<1))
     {
      if(CountOrders(4)<1 && UpRail()>0 && Bid<High[1]) PutOrder(4,High[1]+Delta*Point);
      if(CountOrders(5)<1 && DnRail()>0 && Bid>Low[1]) PutOrder(5,Low[1]-Delta*Point);
      t=Time[0];
     }

   Comment("\n ");
  }
//+------------------------------------------------------------------+

avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 15 апреля 2017, 13:52
+
0
TimeMinute(TimeCurrent())+Expiration
*zapoy* 
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 15 апреля 2017, 23:15
+
0
Андрей проверьте мартингейл! После S\L и при серии S|L gри выставлении отложки и удалении ордера по истечению кол-ва свечей (отмене ордера) следующий ордер выставляется первоначальным вместо увеличенного
Редактирован: 17 апреля 2017, 14:33
avatar

  3  prizrak56 Автор Сообщений: 19 - Prizrak

  • 17 апреля 2017, 11:34
+
0
avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 17 апреля 2017, 18:17

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий
Начать торговлю с Альпари