Не компилируется, как исправить?
Вы потеряли две функции, о чем, кстати, компилятор Вам и сообщает. Найдите эти функции, вставьте в код и будет счастье.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Vladimir Karputov, 2018.12.07 05:37
Например так: вводим переменную Step equity.
//+------------------------------------------------------------------+ //| Test EA.mq5 | //+------------------------------------------------------------------+ #property version "1.000" //--- #include <Trade\AccountInfo.mqh> CAccountInfo m_account; // account info wrapper //--- input parameters double InpStepEquity=100; // Step equity //--- double m_start_equity=0.0; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { if(CalculateAllPositions()==0) m_start_equity=m_account.Equity(); if(m_account.Equity()>=m_start_equity+InpStepEquity) { CloseAllPositions(); return; } } //+------------------------------------------------------------------+
Если позиций нет (функция if(CalculateAllPositions()==0)) значит присваиваем переменной m_start_equity=m_account.Equity().
Как только набрали пороговое значение (if(m_account.Equity()>=m_start_equity+InpStepEquity)) - закрываем все позиции CloseAllPositions();.
Он ругается на CloseAll.. и Calculate All.. , вот, а к переменным нет претензий
Правильно ругается. Вы потеряли эти функции. Найдите их, напишите их, скопируейте их и вставьте в свой MQL5 код и будет Вам счастье.
Приведённый пример выше - это заготовка, так сказать намёк на возможную реализацию.
Правильно ругается. Вы потеряли эти функции. Найдите их, напишите их, скопируейте их и вставьте в свой MQL5 код и будет Вам счастье.
Приведённый пример выше - это заготовка, так сказать намёк на возможную реализацию.
Дошло, спасибо. Я просто думал, что есть только предопределеные функции и шаг вправо влево расстрел. Оказывается их можно делать самому
Например в коде Close all positions есть одна из функций. Если поискать по моим кодам, то обнаружится и вторая функция.
Дошло, спасибо. Я просто думал, что есть только предопределеные функции и шаг вправо влево расстрел. Оказывается их можно делать самому
В этом же и есть суть написания программ. Предопределенные тоже есть, в справке все они описаны. Но, большинство функций - ты пишешь сам. А потом - проходишь по ним в отладчике, убеждаясь, что они работают именно так, как тебе надо.
Кстати, как там работает прекрасный эксперт, дающий большую прибыль по куче пар ? Что-то про него давно уже не слышно...
В этом же и есть суть написания программ. Предопределенные тоже есть, в справке все они описаны. Но, большинство функций - ты пишешь сам. А потом - проходишь по ним в отладчике, убеждаясь, что они работают именно так, как тебе надо.
Кстати, как там работает прекрасный эксперт, дающий большую прибыль по куче пар ? Что-то про него давно уже не слышно...
А, ну да, трещать будем тогда, когда можно будет впаривать Грааль или сигналы.
Согласен, это разумно.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования