Группа "Стол заказов MQL"

Рейтинг 2081



РЕКОМЕНДУЮ



Создайте копировщик сделок

Здравствуйте, напишете пожалуйста копировщик сделок с одного терминала на другой… в интернете нашел около 4-х штук но во всех какие то нюансы по работе.
Не нужно кучю функций… все просто
1. такой же:0. или свой задавать
2. копировать стопы, профит и отложные ордера: вкл\выкл
3. проскальзываение или что то что бы он моментально копировал
4. переворачивать ордера: вкл\выкл.
5. сов копирует только с той пары на которую установлен или со всех по которым открываются позиции: вкл\выкл
Самая большая проблема тех копировщиков что я нашел и инете это то что если на одном из терминалов пропадает связь на несколько секунд… то советник перестает копировать сделки, нужно перезагружать оба терминала… Сделайте что бы такого не было.

За ранее благодарен.
  • +2
  • Просмотров: 3798
  • 16 марта 2016, 19:52
  • sidoyy
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Пожалуйста доработайте советника «Drug 2MA»
Следующая запись в группе  
Сделайте советник без индюков
15 марта 2016
17 марта 2016

Комментарии (12)

+
+3
в гугле набери KopirMT4
Есть бесплатная версия и платные, для ваших целей и бесплатная подойдет скорее всего. Проверена временем и большим количеством пользователей. Ну и я автор :-) поэтому поддержка от меня полная.

Если связь пропадет, то точно ничего перезагружать не надо, связь появиться все продолжит работать. Больше всего вопросов мне задают как настроить, проблем на данный момент не наблюдается, все работает как часы.
Редактирован: 16 марта 2016, 20:26
avatar

  2  DKeN Сообщений: 38 - Александр Гаврилин

  • 16 марта 2016, 20:24
+
0
Александр, есть где то исходники копировщика? Насколько сложно написать его с нуля?
Хочу сделать свою основу.
avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 17 марта 2016, 10:28
+
0
был где то у меня с открытым кодом по моему… могу выложить… как раз и ошибки подправите
avatar

  4  sidoyy Автор Сообщений: 80

  • 17 марта 2016, 12:58
+
0
ну исходники копира можно в сети найти, но его реализация примитивная.
реализовать с нуля не сложнее чем любой другой советник.
avatar

  2  DKeN Сообщений: 38 - Александр Гаврилин

  • 17 марта 2016, 10:50
+
0
Благодарю. Пока к этому варианту присматриваюсь: www.mql5.com/ru/code/10705
avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 17 марта 2016, 10:58
+
0
так что, выложить тот что в инете нашел? или вы по своему замутите?
avatar

  4  sidoyy Автор Сообщений: 80

  • 17 марта 2016, 17:01
+
0
так что, выложить тот что в инете нашел? или вы по своему замутите?


Мне интересно посмотреть что там внутри, но получится или нет не могу сказать, я такой никогда не делал.
avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 17 марта 2016, 17:09
+
0
этот вариант без разрешения длл работать не будет, работу с файлами лучше переделать на стандартные файловые функции иначе при желании распространять в маркете в будущем, его не пропустят модераторы.
avatar

  2  DKeN Сообщений: 38 - Александр Гаврилин

  • 17 марта 2016, 11:23
+
0
Я здесь скидываю наброски функций, которые собирают информацию по ордерам, пишут ее в файл, затем читают из файла. Обмен данными между терминалами можно осуществить через текстовый файл и символические ссылки. Если писать копировщик с нуля без своих наработок это очень большой объем работы, не зря на фрилансе просят за копировщик по ТЗ от 200$.


//+------------------------------------------------------------------+
//|                                                       Export.mq4 |
//|                                              Copyright 2016, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
struct Orders
  {
   int               Type;
   double            OpenPrice;
   double            Lots;
  };

Orders Order;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Log(string s="")
  {
//--- Открываем файл 
   int h=FileOpen("Buff.txt",FILE_READ|FILE_WRITE|FILE_TXT);
   FileWrite(h,s);
   FileClose(h); // закрываем файл 
  }
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   while(!IsStopped())
     {
      for(int i=OrdersTotal()-1;i>=0;i--)
        {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
           {
            if(OrderSymbol()==Symbol())
              {
               if(OrderType()==OP_BUY)
                 {
                  Order.Type=0;
                  Order.Lots=OrderLots();
                  Order.OpenPrice=OrderOpenPrice();
                 }
               if(OrderType()==OP_SELL)
                 {
                  Order.Type=1;
                  Order.Lots=OrderLots();
                  Order.OpenPrice=OrderOpenPrice();
                 }
              }
           }
        }
        
      Log(Symbol() +" "+ (string)Order.Type +" "+ (string)Order.Lots +" "+ (string)Order.OpenPrice);
      
      Comment("\n Order Type: ",Order.Type,
              "\n Order Lots: ",Order.Lots,
              "\n Order OpenPrice: ",Order.OpenPrice);

     }

  }
//+------------------------------------------------------------------+




//+------------------------------------------------------------------+
//|                                                       Import.mq4 |
//|                                              Copyright 2016, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+

#property copyright "Copyright 2016, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

int Type=0;
string s="";
double Lots=0;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutOrder(int type,double price)
  {
   int r=0;
   color clr=Green;
   double sl=0,tp=0;

   if(type==1 || type==3 || type==5)
     {
      clr=Red;
     }

   if(type==0 || type==2 || type==4)
     {
      clr=Blue;
     }

   r=OrderSend(NULL,type,Lots,NormalizeDouble(price,Digits),100,0,0,"",0,0,clr);
   return;
  }
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   while(!IsStopped())
     {
      if(OrdersTotal()<1)
        {
         //--- Открываем файл 
         int h=FileOpen("Buff.txt",FILE_READ|FILE_TXT);
         s=FileReadString(h,100);
         Type=(int)StringSubstr(s,7,1);
         Lots=(double)StringSubstr(s,9,5);
         FileClose(h); // закрываем файл 
         
         if(Type<1) PutOrder(Type,Ask); 
         if(Type>0) PutOrder(Type,Ask);        
        }

      Comment("\n Order Type: ",Type,
              "\n Order Lots: ",Lots,
              "\n String: ",s);

     }
  }
//+------------------------------------------------------------------+

avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 17 марта 2016, 19:17
+
0
так это получается два сова? куда какой ставить или они еще не готовы?
avatar

  4  sidoyy Автор Сообщений: 80

  • 18 марта 2016, 18:47
+
0
Это только наброски. Здесь объем работы очень большой. Я не возьмусь.
avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 18 марта 2016, 19:05
+
0
давайте я дам вам рабочий, только он выдает ошибку каку ето от которой зависает терминал через пол часа работы… вы его подправите
avatar

  4  sidoyy Автор Сообщений: 80

  • 19 марта 2016, 16:43

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