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

 
Vitaly Muzichenko:
Не нашёл, да и не помню здесь такого

грубо говоря есть бид, есть средняя цена ордеров по сетке

трал - это бид минус средняя цена сетки, в сравнении с заданным шагом

если что - то идет не так кроешь  всю сетку сразу через цикл 

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

кстати ищу идеи для повышения устойчивости алгоритмов 

 
trader781:

грубо говоря есть бид, есть средняя цена ордеров по сетке

трал - это бид минус средняя цена сетки, в сравнении с заданным шагом

если что - то идет не так кроешь  всю сетку сразу через цикл 

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

кстати ищу идеи для повышения устойчивости алгоритмов 

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

Вы мой вопрос читали? Жду ответа не от вас, а от профи

 
Vitaly Muzichenko:

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

Как всё-же лучше получать актуальные цены, и при этом менее ресурсозатратно, напомню - для трала сетки. 

Так вариантов-то не особо много...

Ну вот как я делаю: в цикле перебора ордеров, после прохождения всех фильтров по символу, магику и типу, получаю в переменную нужную цену посредством SymbolInfoDouble(), и расчёты уровней уже провожу с ней непосредственно перед отправкой торгового запроса (если конечно расчёт дал такой результат, что необходима модификация). Можно и SymbolInfoTick() использовать - как угодно, и что больше подходит по логике. Он конечно позволяет получить не только одну лишь цену, а целый набор параметров последнего тика, но порою вполне достаточно получить для определённого типа выбранного ордера лишь одну цену - Ask или Bid и работать с ней, а другую цену, для иного типа ордеров, всё-равно получать уже на следующей итерации цикла. Поэтому использовать единожды перед циклом полученную цену чревато тем, что можно нарваться на устаревшую цену при пропуске тика из-за длительных расчётов.

 
Artyom Trishkin:
А если вообще не получит? Как тормозишь цикл?

А это я оставил на усмотрение каждого. Но по настоятельным просьбам пользователей открою огромную тайну...

       int d = 0;
        do
         {
          d++;
         }
        while(!SymbolInfoTick(_Symbol, mqlTick) && d < 7);
 

Всем привет!

Подскажите пожалуйста, каким образом можно написать подсказки/всплывающие окна?

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

 Спасибо! 

 
LuckySith:

Всем привет!

Подскажите пожалуйста, каким образом можно написать подсказки/всплывающие окна?

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

 Спасибо! 

SetIndexLabel

Устанавливает текст описания линии индикатора для отображения информации в окне DataWindow и всплывающей подсказке.

void  SetIndexLabel(
   int     index,       // номер линии
   string  text         // текст описания
   );

Параметры

index

[in]  Порядковый номер линии. Должен быть от 0 до 7.

text

[in]  Текст описания линии индикатора. NULL означает, что значение этой линии не показывается в DataWindow.

 
Alekseu Fedotov:

SetIndexLabel

Устанавливает текст описания линии индикатора для отображения информации в окне DataWindow и всплывающей подсказке.

void  SetIndexLabel(
   int     index,       // номер линии
   string  text         // текст описания
   );

Параметры

index

[in]  Порядковый номер линии. Должен быть от 0 до 7.

text

[in]  Текст описания линии индикатора. NULL означает, что значение этой линии не показывается в DataWindow.

Хм, так это линия
А мне по нажатию на значок
 
LuckySith:
Хм, так это линия
А мне по нажатию на значок

Пофиг, можно и на значек

кинь на график фракталы, и наведи мышкой на значек

 
Здравствуйте. Подскажите пожалуйста, как может if(MarketInfo(Symbol(),MODE_POINT)==0) быть верным?
 
Gevorg Hakobyan:
Здравствуйте. Подскажите пожалуйста, как может if(MarketInfo(Symbol(),MODE_POINT)==0) быть верным?
Проверьте наличие символа в обзоре рынка. Ноль быть не может.
Причина обращения: