Форум трейдеров » Торговые роботы, советники, индикаторы » Вопросы программирования
+ Подписаться
Страница 75 из 87 ПерваяПервая ... 2565737475767785 ... ПоследняяПоследняя
  1. 1,156
    Комментарии
    4
    Темы
    1189
    Репутация Pro
    Аватар для zerkmax  
    Мастер форумных наук

    4 Медалей
    Цитата Сообщение от Sevrer Посмотреть сообщение
    В проекте Мальцева запрещено использование экспертов и скриптов для управления ордерами. Т.е. с ордерами работать надо только ручками. А значит тралить тейк так же придется ручками.
    не совсем верно что ручками.
    можно средствами самого МТ, в него встроен трал открытых позиций.

    единственное, его для каждой сделки действительно нужно запускать в ручную

    Цитата Сообщение от M.B. Посмотреть сообщение
    ок....спасибо за то, что подсказали :bow:
    правой кнопкой мыши на ордере и:
     
  2. 1,279
    Комментарии
    15
    Темы
    1292
    Репутация Pro
    Аватар для Sevrer  
    Мастер форумных наук

    5 Медалей
    Цитата Сообщение от zerkmax Посмотреть сообщение
    не совсем верно что ручками.
    можно средствами самого МТ, в него встроен трал открытых позиций.

    единственное, его для каждой сделки действительно нужно запускать в ручную



    правой кнопкой мыши на ордере и:
    Не совсем верное замечание.

    Товарищ хотел тралить не по пунктам, а по трендовой линии.
    Использование встроенного трала не запрещено, но есть подозрения, что весьма не желательно.

    Нужно лишь вспомнить о цели конкурса. В случае успеха будет переход на работу в другой платформе, где не будет ни тралов, ни скриптов ни экспертов. Потому и надо уметь работать ручками.
  3. 19
    Комментарии
    0
    Темы
    19
    Репутация Pro
     
    Новичок

    2 Медалей
    Здравствуйте, подскажите почему скрипт на открытие (или закрытие) до конца самостоятельно не действует, а лишь вызывает окно терминала "Открыть ордер" ("Закрыть Ордер") Код скрипта следующий: (Я еще мало понимаю, поэтому выложу весь код)
    extern int MaxRisk=2;
    extern bool Buy=true; //для открытия ордера на покупку
    extern bool Sell=false; //для открытия ордера на продажу
    extern int TakeProfit=10;
    extern int StopLoss=10;
    //+------------------------------------------------------------------+
    int start()
    {double Lot=GetLot(MaxRisk);
    if(Lot==0) {Alert("Недостаточно средств!");return(0);}
    RefreshRates();
    if(Buy) NewOrder(OP_BUY,Lot);
    if(Sell) NewOrder(OP_SELL,Lot);
    return(0);}
    //+------------------------------------------------------------------+
    double GetLot(int Risk)
    {double Free =AccountFreeMargin();
    double One_Lot =MarketInfo(Symbol(),MODE_MARGINREQUIRED);
    double Min_Lot =MarketInfo(Symbol(),MODE_MINLOT);
    double Max_Lot =MarketInfo(Symbol(),MODE_MAXLOT);
    double Step =MarketInfo(Symbol(),MODE_LOTSTEP);
    double Lot =MathFloor(Free*Risk/100/One_Lot/Step)*Step;
    if(Lot<Min_Lot) Lot=Min_Lot;
    if(Lot>Max_Lot) Lot=Max_Lot;
    if(Lot*One_Lot>Free) return(0.0);
    return(Lot);}
    //+------------------------------------------------------------------+
    int NewOrder(int Cmd,double Lot)
    {double TP=0; //тейкпрофит
    double SL=0; //стоплосс
    double PR=0; //Цена
    while(!IsTradeAllowed()) Sleep(100);
    if(Cmd==OP_BUY)
    {PR=Ask;
    if(TakeProfit>0) TP=Ask+TakeProfit*Point;
    if(StopLoss>0) SL=Ask-StopLoss*Point;}
    if(Cmd==OP_SELL)
    {PR=Bid;
    if(TakeProfit>0) TP=Bid-TakeProfit*Point;
    if(StopLoss>0) SL=Bid+StopLoss*Point;}
    int tic=OrderSend(Symbol(),Cmd,Lot,PR,3,SL,TP,"",0,0,C LR_NONE);
    if(tic<0) Print("Ошибка открытия ордера: ",GetLastError());
    return(tic);}
  4. 5,973
    Комментарии
    10
    Темы
    5318
    Репутация Pro
    Аватар для leonid553  
    Старожил

    6 Медалей
    Цитата Сообщение от D7D Посмотреть сообщение
    Здравствуйте, подскажите почему скрипт на открытие (или закрытие) до конца самостоятельно не действует, а лишь вызывает окно терминала "Открыть ордер" ("Закрыть Ордер") Код скрипта следующи
    Не думаю, что здесь виноват код.
    Скорее всего, вы забыли убрать галочку из окна СВОЙСТВА/ОБЩИЕ для опции "РУЧНОЕ ПОДТВЕРЖДЕНИЕ"
     
  5. 19
    Комментарии
    0
    Темы
    19
    Репутация Pro
     
    Новичок

    2 Медалей
    так, а подскажи что по коду не так? теперь меня не спрашивает терминал подтверждение, но и ордер не открывается. Я подозреваю что что то не так с обьемом торговли. если ставлю большой риск, то ругается. а маленький риск- ни чего не происходит((( Подскажите пожалуйста? ( вроде скачал скрипт по утверждению рабочий, а он не фурычит)
  6. 19,801
    Комментарии
    465
    Темы
    20570
    Репутация Pro
    Аватар для Евгений Ляпкин  
    Старожил

    9 Медалей
    На каком инструменте это происходит? Если на фьючерсах, то прчина в том, что ордер выставляется вместе со стопом и тейком, а это невозможно
  7. 2,974
    Комментарии
    7
    Темы
    2995
    Репутация Pro
     
    Banned

    4 Медалей
    Цитата Сообщение от D7D Посмотреть сообщение
    так, а подскажи что по коду не так? теперь меня не спрашивает терминал подтверждение, но и ордер не открывается. Я подозреваю что что то не так с обьемом торговли. если ставлю большой риск, то ругается. а маленький риск- ни чего не происходит((( Подскажите пожалуйста? ( вроде скачал скрипт по утверждению рабочий, а он не фурычит)
    Попробуйте просто установить..
    Код:
    extern int TakeProfit=0;
    extern int StopLoss=0;
    Если поможет - код скрипта надо чуть-чуть изменить..
  8. 19
    Комментарии
    0
    Темы
    19
    Репутация Pro
     
    Новичок

    2 Медалей
    действительно помогло, спасибо. Наконец то у меня сдвиг. Правда я не до конца понял почему при нулевых значениях это вообще работает. буду разбираться.
  9. 4,164
    Комментарии
    7
    Темы
    4265
    Репутация Pro
    Аватар для Денис Давыдов  
    Мастер форумных наук

    4 Медалей
    Цитата Сообщение от D7D Посмотреть сообщение
    действительно помогло, спасибо. Наконец то у меня сдвиг. Правда я не до конца понял почему при нулевых значениях это вообще работает. буду разбираться.
    В Броко исполнение ордеров - Market Execution, по-этому вначале выставлять ордер надо, а затем выставлять стоп/профит.
  10. 19
    Комментарии
    0
    Темы
    19
    Репутация Pro
     
    Новичок

    2 Медалей
    Так, не совсем понял, то есть изначально ТП и СЛ не получится вместе с ордером установить? мне что потом отдельно прописывать Закрытие ордера с прибылью и убылью? прокоментируйте пожалуйста.
    И еще вопрос, я вот в терминале когда ордер открываю выбираю обьем сделки, а что когда я автоматизирую процесс открытия я не могу обьем указать так же 0,5 к примеру. Обязательно велечину лота расчитывать?
    Спасибо.

Вверх
РегистрацияX

чтобы писать, читать, комментировать