Перейти к содержанию
Форекс Форум трейдеров Академии «MasterForex-V»

PetrMFXV

Пользователи ST test (off)
  • Постов

    85
  • Зарегистрирован

  • Посещение

Весь контент PetrMFXV

  1. Попробуйте этот, но я его не тестил, по моему должен работать . Не тот архив прикрепил, сейчас подправлю. Извините, что так долго, проверял в живую. Можно еще подправить, а то на текущей свече срабатывает и еще не факт что свеча закроется в соответствие сигналу . Fisher_m11_1.rar
  2. Попробуйте этот, но я его не тестил, по моему должен работать . Не тот архив прикрепил, сейчас подправлю.
  3. Попробуйте этот, но я его не тестил, по моему должен работать . Fisher_m11_.rar
  4. Во-первых, это код не советника, а индюка. Во-вторых, там гораздо больше ошибок. В-третьих, алгоритм функции CalculateCurrentBar очень странный. Особенно эти операторы: if (HighestHigh-LowestLow -1 < PriceLocation 0.99) SmoothedLocation= 0.99; // verhindert, dass MathLog unendlich wird if (SmoothedLocation<-0.99) SmoothedLocation=-0.99; // verhindert, dass MathLog minuns unendlich wird В первом вообще ошибка. В этом тоже ошибка: if (Bars-pos0) // up trend Откуда взялась переменная pos0, если допустить что это входной параметр pos функции, то очень странно выглядет определение тренда выражением if (Bars-pos) Также бардак с буферами индюка. Короче, во вложении индюк с исправленным синтаксисом, но он ничего показывать не будет. Ищите нормальный код. Fisher_m11.rar
  5. Если не секрет, какая компания?
  6. Если требуется немедленная перерисовка, то лучше использовать метод Update: sgBidAsk->Update(). Для таких компонентов как гриды(сетка) при полной перерисовке лучше вообще использовать метод Refresh()(который вызовет Repaint, который в свою очередь вызовет Invalidate, а затем Update) и не мучиться.
  7. Думаю из рисунка и экспа Empty будет понятно что к чему. Empty.rar
  8. Нет, немного не так. if(условие) не заменить, по нему происходит открытие ордера, но вместо одного открывается двадцать, а мне нужно строго один. Ведь у меня задействована функция подсчета открытых ордеров, почему при удовлетворении условия открывается больше одного ордера, вот что мне никак не понятно... Не заменить, а добавить.Но для начала проверь что тебе возвращает функция подсчета открытых ордеров(пусть она пишет в журнал) скорее всего там что-то не то,тогда и добавлять ничего не надо. И попутно вопрос - ордер должен быть один на каждый инструмент или только один вообще, если нужен только один, то в функции подсчета открытых ордеров убери проверку на символ.
  9. Замени if(условие) на if((err <= 0)||function(err)), err должна быть глобальной переменной(в теле экспа) или static,function(err) - функция проверяет номер ордера среди закрытых ордеров и обнуляет err если такой есть, примерно так если конечно я правильно понял условия задачи. При открытие ордера могут возникнуть проблемы, не все ДЦ позволяют открывать ордера с ТП и стоп-лоссом, в этих ДЦ сначала нужно открыть ордер с sl=0 и tp=0, а потом этот ордер уже модифицировать с необходимыми sl и tp.
×
×
  • Создать...