Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 253

 
Ibragim Dzhanaev:

Подскажите, почему трал срабатывает на каждом тике ?

Нужно сравнять TakeProfit и StopLoss позиции BUY с ценой Bid, а позиции SELL с ценой Ask .

Ето цены по которые они срабатывают.

То есть попробуйте так :
 if(OrderOpenPrice()+(trail_p*Point)<Ask && OrderStopLoss()+(trail_p*Point)<Bid )
if(OrderOpenPrice()-(trail_p*Point)>Bid && OrderStopLoss()-(trail_p*Point)>Ask )
 
Ibragim Dzhanaev:

Подскажите, почему трал срабатывает на каждом тике ?

Шаблон трала. Прямо в этой же ветке.

 
Ivan Ivanov:

Нужно сравнять TakeProfit и StopLoss позиции BUY с ценой Bid, а позиции SELL с ценой Ask .

Ето цены по которые они срабатывают.

То есть попробуйте так :

Ничего не изменилось.

 
Artyom Trishkin:

Шаблон трала. Прямо в этой же ветке.


Спасибо.

 
Artyom Trishkin:

Шаблон трала. Прямо в этой же ветке.


double sl=NormalizeDouble(level_of_trail-trailing_stop*point,digits);  // вычисляем новый уровень стоплосс по значению, 

Почему у Вас point и digits, написаны с маленькой буквы ?


 
Ibragim Dzhanaev:

double sl=NormalizeDouble(level_of_trail-trailing_stop*point,digits);  // вычисляем новый уровень стоплосс по значению, 

Почему у Вас point и digits, написаны с маленькой буквы ?


Потому, что код оптимизирован, и переменная инициализируется один раз в шаблоне, а не в каждом месте по 100 раз

            int    digits=(int)SymbolInfoInteger(symbol_name,SYMBOL_DIGITS);
            double point=(SymbolInfoDouble(symbol_name,SYMBOL_POINT));
 
Ibragim Dzhanaev:

double sl=NormalizeDouble(level_of_trail-trailing_stop*point,digits);  // вычисляем новый уровень стоплосс по значению, 

Почему у Вас point и digits, написаны с маленькой буквы ?


Потому, что они объявлены внутри этой функции - этот шаблон трала работает с любым символом, который передан в параметрах функции, а не с только текущим, как вы подумали.

 
Vitaly Muzichenko:

Потому, что код оптимизирован, и переменная инициализируется один раз в шаблоне, а не в каждом месте по 100 раз

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

подскажите пожалуйста как вытащить из терминала котировки за определённый день(открытие,закрытие,макс,мин дня) в программку написанную мной(с++) и там провести окончательные расчёты без возврата в терминал новой информации в индикатор,советник и т.д.,просто выдёргивать котировки по дате к себе в программу ? заранее спс 

 
виталик:

подскажите пожалуйста как вытащить из терминала котировки за определённый день(открытие,закрытие,макс,мин дня) в программку написанную мной(с++) и там провести окончательные расчёты без возврата в терминал новой информации в индикатор,советник и т.д.,просто выдёргивать котировки по дате к себе в программу ? заранее спс 

Через файл, например...
Причина обращения: