Помощь по кодированию с помощью d'Alembert Forex EA
Results 1 to 6 of 6

Thread: Помощь по кодированию с помощью d'Alembert Forex EA

  1. #1
    Всем привет,

    Я пытаюсь закодировать эксперта, который справляется с прогрессией d'alembert (для всех, кто не знает прогресса d'alembert:
    http://www.bettingexpert.com/casino/...lembert-system)

    Планируется начать с 0,01 лота и SL 13 пипсовTP 14 пипсов.

    Каждый раз, когда торговля заканчивается с потерей, новая торговля открывается сразу с дополнительными 0,01 лотами, и после того, как торговая сделка с выигрышной сделкой открывается немедленно с 0,01 лота меньше, чем лоты, прежде чем мы придем к 0.01 лотам.


    Пример:

    1. торговля 0,01 лота

    2. Торговля 0,02 лота

    3. Торговля 0.03 лота

    4. Торговля 0,04 лота

    5. торговля 0.05 лотов выиграть

    6. торговля 0.04 лотов выиграть

    7. торговля 0.03 лотов выиграть

    8. Торговля 0.02 побед

    9. торговля 0,01 лота выиграть


    Итак, вот мой первый код, но он не работает в тесте стратегии. :-(

    Кто может помочь?


    Введенный код/ --------------------------------------------- --------------------- /| A4.mq4 |/| Copyright © 2010, MetaQuotes Software Corp. |/| http://www.metaquotes.net |/ ----------------------------------------------- ------------------- #property copyright Copyright © 2010, MetaQuotes Software Corp. ссылка #property http://www.metaquotes.net/ ---- -------------------------------------------------- ------------ /| внешние входные параметры |/ ----------------------------------------------- ------------------- extern int MagicNumber_101 = 101000; extern int SL = 13; extern int TP = 14; double dXPoint = 1;/ ----------------------------------------------- ------------------- /| экспертная функция инициализации |/ ----------------------------------------------- ------------------- int init () {//----/---- return (0); }/ ---------------------------------------------- -------------------- /| экспертная деинициализация |/ ----------------------------------------------- ------------------- int deinit () {//----/---- return (0); }/ ---------------------------------------------- -------------------- /| функция запуска эксперта |/ ----------------------------------------------- ------------------- int start () {double Lotsize = 0.01; if (OrdersHistoryTotal () gt = = 1) {OrderSelect (OrdersHistoryTotal () - 1, SELECT_BY_POS); Lotsize = OrderLots (); } if (OrderProfit () lt; 0 OrdersHistoryTotal () gt = = 1) {Lotsize = Lotsize 0.01; } if (OrderProfit () gt 0 OrdersHistoryTotal () gt; = 1 Lotsizegt; = 0.02) {Lotsize = Lotsize - 0.01; } if (OrdersHistoryTotal () lt; 1 Minute () == 00) {OrderSend (Символ (), OP_BUY, 0.01, MarketInfo (Символ (), MODE_ASK), 2, Bid-SL * Point, Bid TP * Point, купить, MagicNumber_101,0, равно CLR_NONE); } Сон (120000); if (OrdersTotal () == 0 Minute () == 00) {OrderSelect (OrdersHistoryTotal () - 1, SELECT_BY_POS); if (OrderProfit () gt 0 OrderType () == OP_BUY) {OrderSend (Symbol (), OP_BUY, 0.01, MarketInfo (Symbol (), MODE_ASK), 2, Bid-SL * Point, Bid TP * Point, buy , MagicNumber_101,0, CLR_NONE); } Сон (120000); } if (OrdersTotal () == 0 Минута () == 00) {if (OrderProfit () gt; 0 OrderType () == OP_SELL) {OrderSend (Символ (), OP_SELL, 0.01, MarketInfo (Символ (), MODE_BID ), 2, Ask SL * Point, Ask-TP * Point, продать, MagicNumber_101,0, CLR_NONE); } Сон (120000); } if (OrdersTotal () == 0 Minute () == 00) {if (OrderProfit () lt; 0 OrderType () == OP_SELL) {OrderSend (Symbol (), OP_BUY, 0,01, MarketInfo (Symbol (), MODE_ASK), 2, Bid-SL * Point, Bid TP * Point, купить, MagicNumber_101,0, CLR_NONE); } Сон (120000); } if (OrdersTotal () == 0 Minute () == 00) {if (OrderProfit () lt; 0 OrderType () == OP_BUY) {OrderSend (Символ (), OP_SELL, 0.01, MarketInfo (Символ (), MODE_BID ), 2, Ask SL * Point, Ask-TP * Point, продать, MagicNumber_101,0, CLR_NONE); } Сон (120000); } return (0); }
    Пожалуйста, никаких комментариев, таких как Blow your account away ... blabla
    Просто разделяйте торговую стратегию.

    С уважением.

  2. #2
    Попробуйте это (в тесте, который есть ..): Введенный код #property строгий ввод int SL = 130; input int TP = 140; двойной лот = 0,01; int ticket; int OnInit () {ticket = OrderSend (Символ (), OP_BUY, лот, Ask, 2, Ask-SL * Point, Ask TP * Point); if (ticket gt; -1) вернуть INIT_SUCCEEDED; return INIT_FAILED; } void OnTick () {if (OrderSelect (0, SELECT_BY_POS)) return; OrderSelect (билет, SELECT_BY_TICKET); if (OrderProfit () lt; 0.0) {lot = 0.01; ticket = OrderSend (Символ (), OP_SELL, лот, Bid, 2, Bid SL * Point, Bid-TP * Point); } else {if (lot gt; 0.01) lot - = 0.01; ticket = OrderSend (Символ (), OP_BUY, лот, Ask, 2, Ask-SL * Point, Ask TP * Point); }}

  3. #3
    Привет, ролик, спасибо! Это mql5-Code? С уважением.

  4. #4
    Нет, это официальный MQL4 с MT4 build 600 (в настоящее время 755). Другой стиль устарел и больше не должен использоваться. В любом случае, это ограничение.

  5. #5
    Привет, rockit, код работает отлично, за исключением того факта, что каждая новая сделка должна быть открыта с помощью тренда, а это означает: - если длинная торговля закрывается с прибылью, следующая торговля - длинная сделка - если длинная сделка закрывается с потерей, следующая торговля - это короткая сделка - если короткая торговля закрывается с прибылью, следующая торговля - короткая сделка - если короткая торговля закрывается с потерей, следующая торговля - длинная сделка С уважением и большое спасибо заранее

  6. #6
    Привет, rockit, я думаю, я исправил его ... Введенный код {if (OrderSelect (0, SELECT_BY_POS)) return; OrderSelect (билет, SELECT_BY_TICKET); if (OrderProfit () lt; 0.0) {lot = 0.01; if (OrderType () == OP_BUY) {ticket = OrderSend (Символ (), OP_SELL, лот, Bid, 2, Bid SL * Point, Bid-TP * Point); } if (OrderType () == OP_SELL) {ticket = OrderSend (Символ (), OP_BUY, лот, Ask, 2, Ask-SL * Point, Ask TP * Point); }} else {if (lot gt; 0.01) lot - = 0.01; if (OrderType () == OP_SELL) {ticket = OrderSend (Символ (), OP_SELL, лот, Bid, 2, Bid SL * Point, Bid-TP * Point); } if (OrderType () == OP_BUY) {ticket = OrderSend (Символ (), OP_BUY, лот, Ask, 2, Ask-SL * Point, Ask TP * Point); } } Большое спасибо за поддержку!

Действующие разрешения

  • Вы не можете создавать новые темы
  • Вы не можете размещать ответы
  • Вы не можете использовать вложения
  • Вы не можете редактировать ваши записи
  •  
  • BB-код - Вкл.
  • Смайлики - Вкл.
  • Код [IMG] - Вкл.
  • Код [VIDEO] - Вкл.
  • HTML-код - Выкл.
Веб-сайт использует cookies
Веб-сайт использует cookies, в настоящее время некоторые из них уже установлены. Вы можете ознакомиться с более подробной информацией об использовании нами cookies здесь. Чтобы принять условия использования cookies, пожалуйста, нажмите на кнопку справа. Если вы продолжаете пользоваться веб-сайтом, вы по умолчанию принимаете условия использования cookies.