[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 959

 

народ,помогите, я в тупике,как мне выбрать в активном списке(не из истории) именно тот ордер с таким то магиком?

дело в том что у меня в этом списке постоянно по 8-12 ордеров с разными магиками


hh=OrdersTotal();
for(i=0; i<hh; i++)
{if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderMagicNumber()==mg)

cc=i;}

это мое не рабочее соображение)))

 
gheka:

народ,помогите, я в тупике,как мне выбрать в активном списке(не из истории) именно тот ордер с таким то магиком?

дело в том что у меня в этом списке постоянно по 8-12 ордеров с разными магиками


hh=OrdersTotal();
for(i=0; i<hh; i++)
{if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderMagicNumber()==mg)

cc=i;}

это мое не рабочее соображение)))


если это исправлять, то так:

hh=OrdersTotal()-1;
 for(i=hh; i>=0; i--)
 {if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) 
 if(OrderMagicNumber()==mg)

 cc=i;}

непонятна только строчка cc=i ????

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

 
IgorM:


если это исправлять, то так:

непонятна только строчка cc=i ????

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

то есть,как? вместо cc=i; я должен сделать сс=OrderTicket ?

я просто хочу закрыть один ордер с таким то магиком

 
gheka:
то есть,как? вместо cc=i; я должен сделать сс=OrderTicket ?


наверно, я же не знаю, что Вы хотите, но учтите, что и номера тикетов тож могут поменяться, но если Вы ищете свой ордер, запомнили его тикет, и произвели необходимые действия с ордером, то думаю все получится,

обычно сразу в одном цикле перебора ордеров и производят все манипуляции с необходимым ордером - путем вызова необходимых ф-ций

посмотрите эту ветку https://www.mql5.com/ru/forum/107476/page49 , там много интересного 

 
IgorM:


наверно, я же не знаю, что Вы хотите, но учтите, что и номера тикетов тож могут поменяться, но если Вы ищете свой ордер, запомнили его тикет, и произвели необходимые действия с ордером, то думаю все получится,

обычно сразу в одном цикле перебора ордеров и производят все манипуляции с необходимым ордером - путем вызова необходимых ф-ций

посмотрите эту ветку https://www.mql5.com/ru/forum/107476/page49, там много интересного

вообщем вот,

if (pb>MA_3&&Fact_Up==true)
{
Fact_Dn = true;
Fact_Up = false;
int hh=OrdersTotal()-1,i;
for(i=hh; i>=0; i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if(OrderMagicNumber()==mg_3)

int cc=OrderTicket();
}
}

OrderClose(cc,Lots_3,pa,3,Green);

}


какие то ордера почему то не закрывает, в истории счета я посмотрел, что четыре дня назад какой то открыт был,

то сегодня только его закрыл???????????? хотя должен был закрыть раньше

пытался сделать так чтобы при пересечении на верх МА закрыл позицию с таким то магиком,которая была ниже МА

в чем же тут у меня проблема?

 

Добрый день !

Скажите, пожалуйста, возможно ли увеличить скорость тестера стратегий в МТ4: месяц просчитывает за 5-7 минут, а чем больше лет - тем ещё дольше ? Процессор 4.4 Гб (два ядра по 2.2 Гб) в процессе тестирования загружается до 95%, память - 4 Гб - до 55 %.

 
volshebnik:

Добрый день !

Скажите, пожалуйста, возможно ли увеличить скорость тестера стратегий в МТ4: месяц просчитывает за 5-7 минут, а чем больше лет - тем ещё дольше ? Процессор 4.4 Гб (два ядра по 2.2 Гб) в процессе тестирования загружается до 95%, память - 4 Гб - до 55 %.


Можно оптимизировать советник что бы быстрее работал, но тестер ... не знаю
 

А как это так получается,что в тестере при совершенно разных параметрах советника совершенно одинаковые результаты во многих строках,и наоборот,при минимально различающихся параметрах радикально отличающиеся результаты!!?? Например

 проход   прибыль      всего     прибыльность    матожидание     просадка        просадка%
                                 сделок 

  1901      58632.60     128          1.58                  458.07               9289.02           32.57% BandsPeriod=22 BandsDeviations=3 Lots=3.9 TakeProfit=92 stoploss=31 i=1 BandsShift=0

  1903      58632.60     128          1.58                  458.07               9289.02           32.57% BandsPeriod=23 BandsDeviations=4 Lots=3.9 TakeProfit=92 stoploss=31 i=1 BandsShift=0

  1905      58632.60     128          1.58                  458.07               9289.02           32.57% BandsPeriod=17 BandsDeviations=4 Lots=3.9 TakeProfit=92 stoploss=31 i=1 BandsShift=0

  1906      58632.60     128          1.58                  458.07               9289.02           32.57% BandsPeriod=33 BandsDeviations=4 Lots=3.9 TakeProfit=92 stoploss=31 i=1 BandsShift=0







 

 
Alexandr24:
Скажите почему индикатор необновляется datetime some_time=iTime(NULL,PERIOD_H1,0); ведь сдвиг относительно текущего бара 0, но индикатор обновляется только если нажать компиляция как сделать чтобы он самостоятельно расчитывался?


ну третий раз заквотите свой пост точно ответят! ;)

хоть телепаты и в отпуске, но подозреваю, что часть их возможностей в части видения кода без самого кода передается мне :)

лан, с лирикой завязываю, по сути:

1. код где?

2. подозреваю, что проблемное место закралось в ф-цию init()

 

Здравствуйте всем.

Вопрос: можно ли в  индикаторе   bolinger_bands_stop  изменить параметр deviation на нецелые числа (например 0,38)

В кодах не разбираюсь, если кто-может помогите 

Файлы:
Причина обращения: