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

Рейтинг 2073



РЕКОМЕНДУЮ



Loader1 Исправление.

Здравствуйте, помогите пожалуйста завершить проект Волновой анализ.
В позапрошлом году вы написали советник Loader1, который загружает сделки и совершает их согласно своей истории. Но в коде была ошибка, которую я вроде как поправил сам, но как оказалось проблема осталась. Бот иногда пропускает ID, продолжает совершать сделки с предыдущем признаком. Указал на картинке. бот в приложении — в него я загрузил данные за 2017-18 г.



Бот очень важен, так как он призван продемонстрировать возможности Волнового Анализа, хочется загрузить в него все свои прогнозы, и подвести итог.
EUR-GBP-RUB2018.rar (158 Kb)
  • +2
  • Просмотров: 2595
  • 8 июля 2018, 21:25
  • ars2005tron
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Monson от игруна - требуется поручитель
Следующая запись в группе  
Индикатор не отображается
08 июля 2018
08 июля 2018

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

комментарий был удален 2018-07-08 23:36:48 ars2005tron

+
0
Надо как то вынести в настройки бота, что значит Признак. Т.е Buy = 1; Sel =0. Чтоб понятно было, перевертыш это или оригинал.
avatar

  19  ars2005tron Автор Сообщений: 1059 - Арсений

  • 9 июля 2018, 13:57
+
0
Уважаемый Андрей, подскажите, можно ли рассчитывать на исправление ошибки в боте что вы писали еще в 2015г, бот в приложении.
avatar

  19  ars2005tron Автор Сообщений: 1059 - Арсений

  • 10 июля 2018, 13:15
+
0
на 20-е и как обычно если получится быстро сделать
avatar

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

  • 10 июля 2018, 17:28
+
0
Андрей, спасибо, буду ждать. Бот простой как вы помните, нужно загрузить даты и признак сделки, чтобы в тестере прогнать. Может что придумаете по лучше чем в теле бота данные заносить и держать, может как то в настройки можно подкрутить… может MQL5 может как то,? мне главное результат.
avatar

  19  ars2005tron Автор Сообщений: 1059 - Арсений

  • 10 июля 2018, 21:15
+
0
где ссылка на тз по которому писался советник?
avatar

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

  • 15 июля 2018, 12:18
+
0
zakaz.opentraders.ru/26888.html#comment108503

Вот, ТЗ оказалось ему уже 4 года-))
avatar

  19  ars2005tron Автор Сообщений: 1059 - Арсений

  • 16 июля 2018, 00:18
+
0
Для сбора статистики по прогнозам Forex, необходимо написать советника в МТ4 который будет читать файлик, и совершать в истории указанные сделки с ниже описываемыми параметрами.

Переменные: Tp и Sl.
1я конфигурация бота — Выполняются все сделки из файла.
2я конфигурация бота — не может быть открыто более 1й сделки.

Сложность в правильном прочтении дат в файле, и доп информации (Sl,TP).
Структура файла:
a) Дата с точностью до минуты
b) Направление прогноза — Up или Dn.
c) доп информация если имеется Sl, Tp- конкретные ценовые уровни.


прочитал тз. в нем ни слова не сказано о переворотах.

переписал немного по другому:




//+------------------------------------------------------------------+
//|                                                       Loader.mq4 |
//|                                              Copyright 2018, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

//--- Inputs
extern double Lots       = 0.1;      // лот
extern double KLot       = 1;        // умножение лота
extern double MaxLot     = 5;        // максимальный лот
extern int StopLoss      = 450;      // лось
extern int TakeProfit    = 500;      // язь
extern int Slip          = 30;       // реквот
extern int Magic         = 123;      // магик

int p[54]=
  {
   0,
   0,
   1,
   1,
   1,
   1,
   1,
   1,
   1,
   0,
   1,
   1,
   1,
   1,
   1,
   0,
   1,
   1,
   1,
   0,
   1,
   1,
   1,
   0,
   0,
   0,
   0,
   1,
   1,
   1,
   1,
   0,
   1,
   0,
   0,
   1,
   0,
   0,
   1,
   0,
   1,
   0,
   0,
   0,
   1,
   1,
   1,
   1,
   1,
   0,
   0,
   0,
   0
  };         //массив с напрвлением сделок 0-бай 1-селл
  
datetime d[54]=//массив с датами
  {
   D'2017.07.10 04',
   D'2017.07.17 04',
   D'2017.07.24 04',
   D'2017.07.31 09',
   D'2017.08.07 04:',
   D'2017.08.14 17',
   D'2017.08.21 15',
   D'2017.08.28 23',
   D'2017.09.04 04',
   D'2017.09.11 04',
   D'2017.09.18 04',
   D'2017.09.25 04',
   D'2017.10.02 04',
   D'2017.10.09 04',
   D'2017.10.16 04',
   D'2017.10.23 04',
   D'2017.10.30 04',
   D'2017.11.06 04',
   D'2017.11.13 04',
   D'2017.11.20 11',
   D'2017.11.27 04',
   D'2017.12.04 04',
   D'2017.12.11 04',
   D'2017.12.18 10',
   D'2017.12.25 04',
   D'2018.01.03 14',
   D'2018.01.08 04',
   D'2018.01.15 11',
   D'2018.01.22 04',
   D'2018.01.29 04',
   D'2018.02.05 04',
   D'2018.02.12 10',
   D'2018.02.19 04',
   D'2018.02.26 04',
   D'2018.03.05 04',
   D'2018.03.12 04',
   D'2018.03.19 04',
   D'2018.03.26 04',
   D'2018.04.02 09',
   D'2018.04.09 09',
   D'2018.04.16 04',
   D'2018.04.23 04',
   D'2018.04.30 04',
   D'2018.05.07 10',
   D'2018.05.14 04',
   D'2018.05.21 04',
   D'2018.05.28 10',
   D'2018.06.04 10',
   D'2018.06.11 04',
   D'2018.06.18 04',
   D'2018.06.25 09',
   D'2018.07.02 10',
   D'2018.07.09 15'
  };

int k=0,t=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {

   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
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(StopLoss>0) sl=NormalizeDouble(price+StopLoss*Point,Digits);
      if(TakeProfit>0) tp=NormalizeDouble(price-TakeProfit*Point,Digits);
     }

   if(type==0 || type==2 || type==4)
     {
      clr=Blue;
      if(StopLoss>0) sl=NormalizeDouble(price-StopLoss*Point,Digits);
      if(TakeProfit>0) tp=NormalizeDouble(price+TakeProfit*Point,Digits);
     }

   r=OrderSend(NULL,type,Lot(),NormalizeDouble(price,Digits),Slip,sl,tp,"",Magic,0,clr);
   return;
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double Lot()
  {
   double lot=Lots;
   for(int i=OrdersHistoryTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderProfit()>0) break;
            if(OrderProfit()<0)
              {
               lot=OrderLots()*KLot;
               break;
              }
           }
        }
     }
   if(lot>MaxLot)lot=Lots;
   return(lot);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   if(Hour()==0) t=0;

   if(p[k]==0 && t==0 && TimeCurrent()==d[k])
     {
      PutOrder(0,Ask);
      t=1;
      k++;
     }

   if(p[k]==1 && t==0 && TimeCurrent()==d[k])
     {
      PutOrder(1,Bid);
      t=1;
      k++;
     }

   Comment("\n k: ",k,
           "\n t: ",t,
           "\n date: ",d[k],
           "\n time: ",TimeCurrent());

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

avatar

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

  • 16 июля 2018, 20:43
+
0
Огромное спасибо!!! очень рад что есть такой ресурс где просто за так помогают реализовать себя, и даже спустя много лет(4) бесплатно, возвращаются и дописывают мечту!-)
avatar

  19  ars2005tron Автор Сообщений: 1059 - Арсений

  • 16 июля 2018, 22:33
+
0
avatar

  19  ars2005tron Автор Сообщений: 1059 - Арсений

  • 27 июля 2018, 14:55
+
0
Здравствуйте, Андрей. Подскажите пожалуйста почему бот останавливается на D'2017.12.18 10:10',
дате, и работает только если удалить ее.
И подскажите пожалуйста как лучше сделать, переворот признака в файле? или в боте в глоб переменную вынести и какую? Нельзя ли как то сделать проверку, если в дату указанную в теле бота открыть нельзя сделку, пусть пробует открыть на след день в 4 ура(вынести в переменную настроек)
Редактирован: 27 июля 2018, 15:31
avatar

  19  ars2005tron Автор Сообщений: 1059 - Арсений

  • 27 июля 2018, 15:10
+
0
Подскажите пожалуйста почему бот останавливается на D'2017.12.18 10:10',
дате, и работает только если удалить ее

насчет этого не подскажу.

И подскажите пожалуйста как лучше сделать, переворот признака в файле? или в боте в глоб переменную вынести и какую?


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

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

  • 27 июля 2018, 17:49
+
0
D'2017.12.18 10:10',, глюк был… Щас вроде работает.
Переварот сделал признака в блокноте-) хорошо конечно было бы если в боте… 3) а по поводу даты неподскажите? если я укажу дату с сайта, а она на выходные придет, бот попробует открыть сделку на след день -в установленное переменной время?
avatar

  19  ars2005tron Автор Сообщений: 1059 - Арсений

  • 27 июля 2018, 18:58
+
0
в следующем месяце сделаю переворот
avatar

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

  • 27 июля 2018, 20:01

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