Как кодировать? - страница 128

 

Подскажите, пожалуйста, код, который мне нужен, чтобы советник открывал сделки быстрее. По какой-то причине мой советник может открыть сделку на минуту или две позже. Просто интересно, какой код нужно добавить, чтобы советник чаще проверял торговые условия. У меня есть EachTick = True, но это в самом начале советника. Нужно ли это изменить?

Как добавить больше подпрограмм цикла?

Спасибо

 
matrixebiz:
Подскажите, пожалуйста, код, который мне нужен, чтобы советник быстрее открывал сделки. По какой-то причине мой советник может открыть сделку на 1 минуту или две позже. Просто интересно, какой код нужно добавить, чтобы советник чаще проверял торговые условия. У меня есть EachTick = True, но это в самом начале советника. Нужно ли это изменить?

Как добавить дополнительные подпрограммы цикла?

Спасибо

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

FerruFx

 
 

Зацикливание без замораживания MetaTrader

У меня есть советник (или, возможно, это должен быть скрипт), который должен постоянно повторять цикл и отслеживать текущие ордера. Какой лучший метод сделать это так, чтобы не заблокировать MetaTrader?

 
dwmcqueen:
У меня есть советник (или, возможно, это должен быть скрипт), который должен постоянно повторять цикл и отслеживать текущие ордера. Какой лучший способ сделать это так, чтобы не заблокировать MetaTrader?

Используйте функцию sleep в конце цикла.

Пример:

while (OrderProfit() < 999999)

{

Code you want to loop here;

Sleep(1000);

}

Sleep(1000) даст вам примерно 1-секундную задержку. У меня был успех с этим в экспертах. Это НЕ работает в индикаторах, не знаю почему.

Надеюсь, это поможет.

 

Почему я не могу вытащить значения из индикатора

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

Индикатор, о котором идет речь, - TrendStrength_v2.mq4. Я не могу опубликовать его, потому что он принадлежит Igorad и у меня нет его разрешения. Но в защищенном форуме, где он его разместил (не помню где), находится исходный код.

Igorad, если он вам нужен, дайте мне знать. Я могу достать его для тебя.

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

Если у кого-нибудь есть этот индикатор, вы получаете те же проблемы?

Любая помощь была бы очень кстати!

ЗАРАНЕЕ СПАСИБО!

Файлы:
blank_ea.mq4  3 kb
 

Ретрейсмент: необходим фрагмент кода

Привет всем,

Мне интересно, есть ли у кого-нибудь кусок mql-кода (или помогите мне сделать его ) для реализации ретрейсмента.

Вот что мне нужно конкретно (для BUY).

Пусть у нас 15-минутный график, на самом деле это не имеет значения, и High за период с T1 по T2. Теперь, моя текущая цена равна этому High, но я не хочу входить в этот прорыв, потому что я умный и хочу подождать отката цены. Тогда будущая цена делает новый максимум, я буду ждать открытия следующей свечи, а затем эта новая свеча делает еще один новый максимум, только тогда я вхожу.

Что меня беспокоит в кодировании, так это то, что, очевидно, я хочу, чтобы все происходило в течение нескольких свечей. Если цена пройдет весь путь вниз (в противоположном направлении), а затем снова вверх, я не хочу, чтобы прорыв сработал вообще.

Возможно, я хочу слишком многого.

Спасибо,

Орест

 

Доступность TrendStrength

Доступна ли эта версия (или более новые версии) в разделе Elite? Или в публичном разделе?

Flytox:
Это TrendStrength v2.2
 

Как добавить LSMA в советники

Я новичок в написании кода. Но EMA Cross.mq4. использует только EMA как тренд. Как я могу добавить или изменить тренд на LSMA? Этот индикатор тренда кажется более надежным, чем EMA или другие, которые предлагаются в языке MQ4. Где можно найти код для этого LSMA и куда его поместить в коде. Я бы хотел добавить LSMA и в этот советник. 100 пипсов. Есть идеи? Вот часть кода для 100 пипсов. Я полагаю, что именно здесь советник находит тренд.

if(timeframe==0) {timeframe=Period();}

double diClose0=iClose(Symbol(),timeframe,0);

double diMA1=iMA(Symbol(),timeframe,7,0,MODE_SMA,PRICE_OPEN,0);

double diClose2=iClose(Symbol(),timeframe,0);

double diMA3=iMA(Symbol(),timeframe,6,0,MODE_SMA,PRICE_OPEN,0);

Как вы можете видеть, 100 пипсов использует SMA. Как нам изменить его на LSMA, ведь язык не поддерживает этот индикатор или поддерживает? Я запутался.

Метод расчета скользящей средней, используемый в индикаторах iAlligator(), iEnvelopes(), iEnvelopesOnArray, iForce(), iGator(), iMA(), iMAOnArray(), iStdDev(), iStdDevOnArray(), iStochastic().

Это может быть любое из следующих значений:

Константа Значение Описание

MODE_SMA 0 Простое скользящее среднее,

MODE_EMA 1 Экспоненциальное скользящее среднее,

MODE_SMMA 2 Сглаженное скользящее среднее,

MODE_LWMA 3 Линейное взвешенное скользящее среднее.

 

Вот советники, о которых я говорил в предыдущем сообщении. Один - Ema Cross, а другой - 100 пипсов.

Файлы: