0
Вот функция:


//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double Lot(int type)
  {
   double lot=Lot1;

   if(CountTrades(type)<1)lot=Lot1;
   if(CountTrades(type)>Count1)lot=Lot2;
   if(CountTrades(type)>Count2)lot=Lot3;
   if(CountTrades(type)>Count3)lot=Lot3;
   if(CountTrades(type)>Count4)lot=Lot4;
   if(CountTrades(type)>Count5)lot=Lot5;
   if(CountTrades(type)>Count6)lot=Lot6;

   return(lot);
  }


1-я строчка

if(CountTrades(type)<1)lot=Lot1;


Если нет позиций данного направления и до числа 1 — лот 1

2-я:
if(CountTrades(type)>Count1)lot=Lot2;


Если число поз данного направления больше Count1 — лот 2
и т.д.

Основные моменты ТЗ реализованы. Далее к платному, здесь делаю только то что можно быстро сделать. И помните чем проще ТЗ тем больше у вас шансов получить советник в готовом виде.
avatar

AM2

  • 29 июня 2017, 20:28
+1
Посмотрю если будет свободное время.
avatar

AM2

  • 28 июня 2017, 17:55
0
Поправил, открывается: www.opentraders.ru/downloads/1621/
avatar

AM2

  • 28 июня 2017, 17:54
0
Если не открывает значит где то не совпало условие. Логи также посмотрите. Я сразу предупреждал что для начала надо было делать на двух а потом добавлять по одному.
avatar

AM2

  • 27 июня 2017, 17:49
0
Сделал в упрощенном виде: www.opentraders.ru/downloads/1622/

avatar

AM2

  • 26 июня 2017, 17:47
0
Не раньше среды буду смотреть.
avatar

AM2

  • 26 июня 2017, 17:35
0
На открытии нового бара


   if(t!=Time[0])
     {
      OpenOrd();
      Mode();
      t=Time[0];
     }


цена находится выше средней линии индикатора, тогда выставляется стоповый ордер на покупку на верхней полосе индикатора



   if(Bid>mid && Bid<up)
     {
      if(CountOrders(4)<1) PutOrder(4,up);
      DelOrder(5);
     }

Условие для открытия отложного стопового ордера на продажу:

На открытии нового бара цена находится ниже средней линии индикатора, тогда выставляется стоповый ордер на продажу на нижней полосе индикатора. Этот ордер движется с полосой, на каждом открытии свечи ордер должен перемешаться с нижней полосой индикатора.



   if(Bid>dn && Bid<mid)
     {
      if(CountOrders(5)<1) PutOrder(5,dn);
      DelOrder(4);
     }

Если был выставлен ордер, но появился обратный сигнал, значит прошлый ордер удаляется и ставится новый ордер в нужном направление.


//--- sell conditions
   if(Bid>dn && Bid<mid)
     {
      if(CountOrders(5)<1) PutOrder(5,dn);
      DelOrder(4);
     }
//--- buy conditions
   if(Bid>mid && Bid<up)
     {
      if(CountOrders(4)<1) PutOrder(4,up);
      DelOrder(5);
     }

Закрытие всех ордеров по общему профиту.

if(AllProfit()>Profit && Profit>0) CloseAll();

Начальный лот рассчитывается как процент Risk от свободной маржи.


double Lot()
  {
   double lot=AccountFreeMargin()*Risk/100000;//10000*10/10000=1
   if(CountTrades()>0) lot=NormalizeDouble(lot*MathPow(KLot,CountTrades()),2);
   if(lot>MaxLot)lot=Lots;
   return(lot);
  }


Все моменты ТЗ прописаны, далее уже а может так, а может эдак, а еще давайте вот это попробуем :) 
avatar

AM2

  • 25 июня 2017, 17:22
0
На скринах поясните?
avatar

AM2

  • 25 июня 2017, 15:21
0
Помогите пожалуйста. На графике появляется встречный сигнал, а советник сделку не открывает. То есть не получится чтобы открывались сделки в обратном направлении если открыты сделки так?


Поясните все на скринах? Я реверс делал, чтобы можно было можно поменять направление сигнала в настройках.
avatar

AM2

  • 25 июня 2017, 15:01
0
Здесь поручились за вас: zakaz.opentraders.ru/39715.html
Гляну на неделе.
avatar

AM2

  • 25 июня 2017, 14:58
0
Посмотрю после выходных.
avatar

AM2

  • 25 июня 2017, 14:57
0
Посмотрю после выходных.
avatar

AM2

  • 24 июня 2017, 20:28
0
Дайте ссылку на советник?
avatar

AM2

  • 24 июня 2017, 20:25
0
Прогнал советник по еврофранку. Ни одной серии в минус. Лот такой же используется как писал в топике: strategy.opentraders.ru/39608.html



Здесь в базе есть усреднители на квантуме, если нужен лот как во советнике, можно скопировать функцию.
avatar

AM2

  • 24 июня 2017, 14:58