[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 355

 

Пожалуйста, просветите:

Если в ходе серии сделанной, например, Динамиком, я захотел увеличить базовый Pipstep на ночь (или изменить ЛЭ, или ТП), насколько это поломает логику советника?

Спасибо!

 
Zhunko:
Зациклить надо его.
Лучше отказаться от функции старт тогда. И во вне ее организовать свою функцию прерываний, с нужной периодичностью в сек., мин., выставляя флаги прерываний. А основное тело программы, просто в цикле пробегает по этим флагам, и по готовности их запускает процедуры пользовательские. А вот одну из этих процедур и можно сделать для получения свежей котировки, тиковой она не будет, но в секундах можно сделать нужную скважность получения ее и забирать по мере необходимости. Таким образом, получится система реального времени, не привязанная к событиям - тик. Как то так.
 
Какой функцией получить спред на текущей паре?
 
_Aybulat_:
Какой функцией получить спред на текущей паре?

1 Ask-Bid

2 MarketInfo

 
_Aybulat_:
Какой функцией получить спред на текущей паре?


https://docs.mql4.com/ru/common/MarketInfo

int spread=MarketInfo("EURUSD",MODE_SPREAD);

 
да, нашел
 

Всем привет. По ходу торговли столкнулся с интересным моментом.

Вобщем в некотором ДЦ (Х) есть функция мониторинга своего счета по еквити, удобная штука. Но только иногда бываю непонятные приколы, (см. картинко ниже)

На геп не похоже так как гепа небыло, а еквити куда то уходит а потом возвращаеццо назад, как будто при снятии и пополнении. Кто с таким сталкивался ?

У ДЦ не спрашивал, так как не хочу привлекать внимание к себе лишний раз

 

В упор не вижу.

Вот кусок кода.

вставляем код правильно

if(OrderSelect(0, SELECT_BY_POS)==true)
{
order_type = OrderType();
//---- Тралл длинных позиций ------
if(order_type == OP_BUY)
{
if(OrderStopLoss() == SARCurrent_S - 3)
return(0);
if(SARCurrent_S <= iLow(Symbol(),15,0))
{
stop = SARCurrent_S - 3; //Уровень стоп-лосс Парабола - 3 пункта
OrderModify(OrderTicket(), OrderOpenPrice(), stop, 0, 0, Aqua);
return(0);
}
}
//---------------------------------
//---- Тралл коротких позиций -----
if(order_type == OP_SELL)
{
if(OrderStopLoss() == SARCurrent_S + 3 + MarketInfo(Symbol(),MODE_SPREAD))
return(0);
if(SARCurrent_S >= iHigh(Symbol(),15,0))
{
stop = SARCurrent_S + 3 + MarketInfo(Symbol(),MODE_SPREAD); //Уровень стоп-лосс Парабола + 3 пункта + спред
OrderModify(OrderTicket(), OrderOpenPrice(), stop, 0, 0, Aqua);
return(0);
}
}
//---------------------------------
}

Выдаёт ошибку OrderModify error 1

При этом судя по журналу ордер модифицируется правильно, но стоп не срабатывает когда цена доходит до него.

Кстати как правильно выделить код здесь на форуме?

 
_Aybulat_:

В упор не вижу.

Вот кусок кода.

Выдаёт ошибку OrderModify error 1


просто нет необходимости модифицировать ордер - все параметры имеющегося ордера совпадают с новыми

не обращайте внимание - посмотрите описание ошибок - ошибка №1 - "нет ошибки"

https://docs.mql4.com/ru/constants/errors

 
_Aybulat_:

Кстати как правильно выделить код здесь на форуме?


кнопка SRC
Причина обращения: