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

 
Lupatik писал(а) >>
Всем привет!Извините,что не по теме,просто я тоже хочу протестировать свои идеи на компьютере,а навыков программирования нет. Поэтому пользуюсь программой Gordago Forex Optimizer. Кто пробовал ею пользоваться,скажите,пожалуйста,как в ней сделать,чтобы из сделки выходить через определенное количество баров,на закрытии? Заранее спасибо!


Могу предложить свой советник для отработки идей и стратегий на тестере в ускоренном режиме.
https://www.mql5.com/ru/code/9625

 
costy_ писал(а) >>

Это далеко не регрессия =))

просто используется drawShift = 14 поставте значение = -14 и он начнет дребезг уже на истории =))

в обычных методах расчета не пересчитывается на каждом тике per = 14 баров истории,

но основа индикатора это сумма изменений цены за per период, т.е.

per = 4

0 бар опен=4 клозе=4

1 бар опен=2 клозе=4

2 бар опен=3 клозе=2

3 бар опен=0 клозе=4

посчитаем 4-0 + 2-3 + 4-2 + 4-4 = 4 + -1 + 2 + 0 = 1

у 0 бара клозе постоянно меняется и получается что при изменении 0 бара на единицу, значение "импульса" увеличивается на 1

ну и наконец, почему же она дрожит

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

было (4,-1,2,0) а стало (5,0,3,1) ну и сместим это все дело на drawShift.

"как эта разность расчитывается дальше за нулевым баром" никак, она рассчитывается до нулевого.

Если вы думаете что он подглядывает в будущее, могу заверить что это не так, будь это тестер что угодно.



Costy, просто MEGA! благодарность всё очень доступно изложено, теперь стало понятно.
 
Советник не может закрыть\открыть позицию (нет цены).



Для проверки этой проблемы написал советник открывающий\закрывающий позицию при появлении нового бара. и обнаружил по некоторым дням существенные пробелы. Пользуюсь ДЦ Альпари.

Эта проблема решаема или нет?
 
Подскажите
Print("bid1=",Bid);Sleep(10000);RefreshRates();Print("bid2=",Bid);
Почему всегда цена остается одинаковой? Что происходит если во время сна приходит тик? как сделать правильно?
 
1Serg >>:
Советник не может закрыть\открыть позицию (нет цены).



Для проверки этой проблемы написал советник открывающий\закрывающий позицию при появлении нового бара. и обнаружил по некоторым дням существенные пробелы. Пользуюсь ДЦ Альпари.

Эта проблема решаема или нет?

Нет, но всегда можно подождать и открыться попозже.

Пользуйтесь поиском по форуму!

https://www.mql5.com/ru/forum/105903/page2

 
d22 >>:
Подскажите
Print("bid1=",Bid);Sleep(10000);RefreshRates();Print("bid2=",Bid);
Почему всегда цена остается одинаковой? Что происходит если во время сна приходит тик? как сделать правильно?

Потому что Функцию Sleep() нельзя вызывать из пользовательских индикаторов, или просто цена не изменилась =))

 
costy_ >>:

Потому что Функцию Sleep() нельзя вызывать из пользовательских индикаторов, или просто цена не изменилась =))

вызывается в советнике!!!

 
d22 >>:

вызывается в советнике!!!

Все правильно если советник в реалтайме,

разве не бывает такого что бид не меняется в течении 10 сек или меняясь возвращается обратно.

скрипт по выбрасывайте на график ...

Файлы:
 
costy_ >>:

Все правильно если советник в реалтайме,

разве не бывает такого что бид не меняется в течении 10 сек или меняясь возвращается обратно.

скрипт по выбрасывайте на график ...

Start()
{
static bool f=1;

if(f==1)
{
Alert("bid1=",Bid);
f=0;

Sleep(30000);
RefreshRates();
f=1;

Alert("bid2=",Bid);
}
}

Ничего не понимаю. Такой код на тестере всегда дает одинаковый бид1 и бид2, Не может же быть одинаковае цены в течении 30 сек

 
costy_ >>:

Нет, но всегда можно подождать и открыться попозже.

Пользуйтесь поиском по форуму!

https://www.mql5.com/ru/forum/105903/page2

Так в том то и дело, что закрыться не могу часами! Последствия ошибки 136 могут быть очень печальными.

Эту тему я читал, там ответа нет последнее сообщение с подобным вопросом написано 10.10.08

Повторил вопрос в той теме.