Скачать MetaTrader 5

Торговля на срочном рынке. Борьба с клирингом FORTS

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Vladislav Andruschenko
106692
Vladislav Andruschenko  

Всем привет, друзья, кто делает советники под Форекс,Фортс, есть ли у Вас универсальный идеи борьбы с клирингом? чтобы эти можно было использовать и на фортс и на форексе.

Имеется ввиду, например:

трейлингстоп,

функция трала довольно простая:

void SimpeTrailing(string symToWork2,double averageprice=-1,int type=-1,int magic=-1)
  {

   int  PosTotal=PositionsTotal();

   for(int i=PosTotal-1;i>=0;i--)
     {
      if((PositionSelectByTicket(PositionGetTicket(i))==true || (!PositionSelectByTicket(PositionGetTicket(i)) && PositionSelect(symToWork2))) && PositionGetSymbol(i)==symToWork2
         && (PositionGetInteger(POSITION_MAGIC)==magic || magic==-1))
        {
         int trailing_level;
         trailing_level=TrailingStop;
         stop_level=SymbolInfoInteger(PositionGetString(POSITION_SYMBOL),SYMBOL_TRADE_STOPS_LEVEL);
         if(trailing_level<(int)stop_level) trailing_level=(int)stop_level;

         if((PositionGetString(POSITION_SYMBOL)!=symToWork2)) continue;

         order_open_price= PositionGetDouble(POSITION_PRICE_OPEN);
         if(averageprice!=-1)order_open_price=averageprice;
         order_type=PositionGetInteger(POSITION_TYPE);

         if(order_type==POSITION_TYPE_BUY && (order_type==type || type==-1))
            if(TypeTradeBUYSELL==0 || TypeTradeBUYSELL==1)
              {

               // Трейлинг стоп
               if((trailing_level==0))continue; // условие, при котором трейлинг стоп не работает

               double sl=PositionGetDouble(POSITION_SL);
               double profit=PositionGetDouble(POSITION_PROFIT);
               if(SymbolInfoDouble(symToWork2,SYMBOL_BID)-trailing_level*SymbolInfoDouble(symToWork2,SYMBOL_POINT)>order_open_price
                  && (SymbolInfoDouble(symToWork2,SYMBOL_BID)-trailing_level*SymbolInfoDouble(symToWork2,SYMBOL_POINT)>sl || sl==0))
                 {
                  sl=SymbolInfoDouble(symToWork2,SYMBOL_BID)-trailing_level*SymbolInfoDouble(symToWork2,SYMBOL_POINT);
                  ModifyOrders(PositionGetInteger(POSITION_IDENTIFIER),sl,0,"SimpeTrailing");

                 }
              }// end POSITION_TYPE_BUY    

         if(order_type==POSITION_TYPE_SELL && (order_type==type || type==-1))
            if(TypeTradeBUYSELL==0 || TypeTradeBUYSELL==2)
              {

               //--- Трейлинг стоп
               if((trailing_level==0)) continue;

               double sl=PositionGetDouble(POSITION_SL);
               double profit=PositionGetDouble(POSITION_PROFIT);
               if(SymbolInfoDouble(symToWork2,SYMBOL_ASK)+trailing_level*SymbolInfoDouble(symToWork2,SYMBOL_POINT)<order_open_price
                  && (SymbolInfoDouble(symToWork2,SYMBOL_ASK)+trailing_level*SymbolInfoDouble(symToWork2,SYMBOL_POINT)<sl || sl==0))
                 {
                  sl=SymbolInfoDouble(symToWork2,SYMBOL_ASK)+trailing_level*SymbolInfoDouble(symToWork2,SYMBOL_POINT);
                  ModifyOrders(PositionGetInteger(POSITION_IDENTIFIER),sl,0,"SimpeTrailing");
                 }

              }// end POSITION_TYPE_SELL

        }// end if select                

     }// end for
  }

 

 

теперь эту функцию надо переделать так, чтобы она работала и на форексе (в том виде как она есть сейчас) и собственно работала на ФОРТС - клиренге, Т.е. запоминала цену клиринга.

 

Идеи пока только такие: вычислять этот ордер до клиринга и собственно брать цену открытия до клиринга.

Говорили что ордер сделки не меняется при клиринге.

Кто сталкивался с этим, у кого какие идеи?  

 

заметил что в сделках появляется такой комментарий при клиринге:

 

 

может быть этим как то оперировать?

 

засада полная с этим клирингом..... не могу сообразить как его обойти универсально 

Vladislav Andruschenko
106692
Vladislav Andruschenko  

да и еще вопрос: есть кто с Украины, кто успешно открыл счет в БКС ? 

например сейчас мне дали реальные счета знакомые. хотелось бы свой открыть и тестировать там работу советников  

fxsaber
8280
fxsaber  
Vladislav Andruschenko:

да и еще вопрос: есть кто с Украины, кто успешно открыл счет в БКС ? 

например сейчас мне дали реальные счета знакомые. хотелось бы свой открыть и тестировать там работу советников  

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Статистика проскальзываний лимитных ордеров на бирже

pivomoe, 2016.08.25 15:15

Начните делать демо счет mt5 в бкс. Вам придет письмо с ссылкой на дистрибутив. На этапе выбора сервера выбираете не демо сервер, а для реальных торгов. Создайте учетную запись с произвольными данными. Сделайте сертификат. Все у вас реальный счет с нулевым балансом с реальными котировками и историей.

Vladislav Andruschenko
106692
Vladislav Andruschenko  
fxsaber:

спасибо, но тестер мне не нужен, там нет клиринга :-)

мне бы реальные условия. я бы и пополнить мог счет, а так с... не открывают  

Vladislav Andruschenko
106692
Vladislav Andruschenko  
Спасибо, но я имел ввиду универсальный функционал, по типу расчета чистой цены для форекса и для Фортс одной функцией, без костылей. 
. ... Rick D. ... .
1181
. ... Rick D. ... .  
Я делал так. Брал цену первой сделки позиции и от нее считал трейлинг. Работает универсально.

Было бы очень замечательно, если бы клиринг начал эмулироваться в тестере.
Vladislav Andruschenko
106692
Vladislav Andruschenko  

в том то и дело, если бы он эмулировался то ок. или бы на демках его включали бы. 

а то и реал не открывают, мол не резидент, да и перепроверять неудобно.  

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий