Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Ваш вопрос непонятен.
Цель-уйти от самого значения цены в советнике, заменив ее iMA
Artyom Trishkin:
Чтобы получить данные Moving Average с отклонением, нужно к возвращаемому значению прибавить/отнять нужное отклонение в пунктах*Point()
Благодарю
Советник сгенерированный Мастером MQL5 на база ДВУХ модулей сигналов "SignalMAAboveBelow.mqh" - один сигнал с периодом усреднения 100, а второй - 200.
Внёс небольшие правки в OnInit():
//| Initialization function of the expert |
//+------------------------------------------------------------------+
int OnInit()
{
if((Signal_0_MA_Weight+Signal_1_MA_Weight)*100/2<Signal_ThresholdOpen ||
(Signal_0_MA_Weight+Signal_1_MA_Weight)*100/2<Signal_ThresholdClose)
return(INIT_PARAMETERS_INCORRECT);
//--- Initializing expert
if(!ExtExpert.Init(Symbol(),Period(),Expert_EveryTick,Expert_MagicNumber))
{
...
ExtExpert.Deinit();
return(INIT_FAILED);
}
//---
string text="MA ("+Signal_0_MA_PeriodMA+"), Reverse ("+Signal_0_MA_Reverse+")"+"\n"+
"MA ("+Signal_1_MA_PeriodMA+"), Reverse ("+Signal_1_MA_Reverse+")";
Comment(text);
//--- ok
return(INIT_SUCCEEDED);
}
Первая правка: проверяем условие - сумма весов сигналов делённая надвое не должна быть меньше порогового значения на открытие или закрытие позиции. Данная правка позволяет при оптимизации выбросить проходы, в которых не будет ни одной сделки.
Вторая правка: выводит на график визуальную информацию о периодах усреднения и о параметре "Reverse".
Модернизированный трейлинг (на базе стандартного \MQL5\Include\Expert\Trailing\TrailingParabolicSAR.mqh)) - стандартный модуль трейлинга переставлял StopLoss по значению iSAR на баре с индексом "1" - но такое поведение давало сильное отставание от цены и, как результат, - потеря потенциальной прибыли.
А так как основной эксперт "SignalMAAboveBelow_x2_iSAR_trailing.mq5" работает только в момент появления нового бара, то я решил внести изменение в стандартный модуль трейлинга - теперь StopLoss выставляется по значению iSAR на баре с индексом "0". Модернизированный модуль трейлинга сохранён под именем "SignalMAAboveBelow_x2_iSAR_trailing.mq5" сохранён по пути: C:\Users\barab\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Experts\Researches iMA\SignalMAAboveBelow_x2_iSAR_trailing.mq5.
В основной эксперт "SignalMAAboveBelow_x2_iSAR_trailing.mq5" внесены, соответственно, изменения:
#property version "1.002"
//+------------------------------------------------------------------+
//| 1.002: |
//| trailing -> TrailingParabolicSAR(aggressive).mqh |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Include |
//+------------------------------------------------------------------+
#include <Expert\Expert.mqh>
//--- available signals
#include <Expert\Signal\SignalMAAboveBelow.mqh>
//--- available trailing
#include <Expert\Trailing\TrailingParabolicSAR(aggressive).mqh>
//--- available money management
#include <Expert\Money\MoneyFixedLot.mqh>
Теперь трейлинг работает так:
Перед трейлингом
Трейлинг по значению iSAR на баре "0"
Файл модернизированного модуля трейлинга и файл эксперта прикладываю...
Владимир, при установки в папку "Каталог данных"\MQL5\Include\Expert\Signal\ MetaEditor выдает те же ошибки. Может быть просто версия MT обновилась? у меня 1545. Советники в ветке переписанные или просто измененные? С чего лучше начать если писать подобный советник и поменять условия открытия ордеров?
Владимир, при установки в папку "Каталог данных"\MQL5\Include\Expert\Signal\ MetaEditor выдает те же ошибки. Может быть просто версия MT обновилась? у меня 1545. Советники в ветке переписанные или просто измененные? С чего лучше начать если писать подобный советник и поменять условия открытия ордеров?
Какой именно файл Вы помещаете в папку "Каталог данных"\MQL5\Include\Expert\Signal\"?
Какой именно файл Вы помещаете в папку "Каталог данных"\MQL5\Include\Expert\Signal\"?
SignalMAAboveBelow_x2_iSAR_trailing.mq5 этот файл, например. Выдает 25 ошибок.
SignalMAAboveBelow_x2_iSAR_trailing.mq5 этот файл, например. Выдает 25 ошибок.
"SignalMAAboveBelow_x2_iSAR_trailing.mq5" - это советник, а не модуль сигналов. Кликаете на файл - он скачивается. Кликаете на скаченный файл - он откроется в редакторе MetaEditor.
"SignalMAAboveBelow_x2_iSAR_trailing.mq5" - это советник, а не модуль сигналов. Кликаете на файл - он скачивается. Кликаете на скаченный файл - он откроется в редакторе MetaEditor.
Владимир, это все как день ясно. Но вы ведь говорите надо в папку "Каталог данных"\MQL5\Include\Expert\Signal\ загружать? Как скомпилировать файл без ошибок?
Владимир, это все как день ясно. Но вы ведь говорите надо в папку "Каталог данных"\MQL5\Include\Expert\Signal\ загружать? Как скомпилировать файл без ошибок?
Вы неверно поняли.
Вы неверно поняли.
Владимир, разобрался, запустил. А где здесь можно поменять ордера на продажу ордерами на покупку?