Смотри, как бесплатно скачать роботов
Ищи нас в Facebook!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Библиотеки

History Deals and Orders - библиотека для MetaTrader 5

Просмотров:
1167
Рейтинг:
(13)
Опубликован:
2020.08.17 07:27
Обновлен:
2022.01.04 08:03
\MQL5\Include\MyInc\HistoryXXXX\
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Способ применения

Включаемый файл 'History Deals and Orders.mqh' это практически тот-же скрипт History Deals and Orders, но написанный в виде подключаемого файла. Теперь функцию печати свойств сделок и ордеров из торговой истории за заданный период можно вызывать из любой mq5 программы.

ВНИМАНИЕ: Пример советника ниже предполагает, что включаемый файл расположен по следующему пути: [data folder]\MQL5\Include\MyInc\HistoryXXXX\History Deals and Orders.mqh

Доступен вывод как во вкладку 'Experts' терминала, так и в текстовой файл (текстовой файл располагается в общей папке [common data folder]\Files\'File name'.txt). Если вывод осуществляется в текстовый файл, то алгоритм следующий:

  1. При старте сначала удаляется файл 'File name'.txt
  2. Далее создается новый файл 'File name'.txt
  3. В файл 'File name'.txt записывается информация.

Чтобы увидеть и открыть текстовой файл, нужно в редакторе MetaEditor:

  • Шаг 1: выбрать меню "Файл" и пункт 'Open Data Folder';
  • Шаг 2: в открывшемся Проводнике перейти в папку 'Files'.

Советник, который не открывает позиции, а просто перед удалением с графика выводит информацию в файл или в терминал во вкладку "Эксперты":

//+------------------------------------------------------------------+
//|                                                      Test EA.mq5 |
//|                         Copyright © 2020-2022, Vladimir Karputov |
//|                      https://www.mql5.com/en/users/barabashkakvn |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2020-2022, Vladimir Karputov"
#property link      "https://www.mql5.com/en/users/barabashkakvn"
#property version   "1.002"
#include <MyInc\HistoryXXXX\History Deals and Orders.mqh>
/*
   Usage example:
      History Deals and Orders.mqh  -> [data folder]\MQL5\Include\MyInc\HistoryXXXX\History Deals and Orders.mqh
      Test EA                       -> [data folder]\MQL5\Experts\Tests\Test EA.mq5
      output file                   -> [common data folder]\Files\'File name'.txt
*/
/*
   barabashkakvn Trading engine 3.138
*/
//---
input datetime                InpFromDate    = D'2017.08.07 11:06:20';  // From date
input ENUM_INFORMATION_OUTPUT InpOutput      = txt_file;                // Information output
input string                  InpFileName    = "HistoryDeals.txt";      // File name (only if "Information output" == "The text file")
//--- input parameters
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   RequestTradeHistory(InpFromDate,TimeCurrent()+60*60*24,InpOutput,InpFileName);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
  }
//+------------------------------------------------------------------+


Когда тест окончится, в OnDeinit вызывается функция 'RequestTradeHistory'. По умолчанию информация записывается в файл в общую папку:

Deal:
|Ticket              |Order               |Time                |Time msc            |Type                |Entry               |Magic               |Reason              |Position ID        
|1214696126          |1231936756          |2022.01.03 06:37:47 |1641191867528       |DEAL_TYPE_SELL      |DEAL_ENTRY_IN       |0                   |DEAL_REASON_CLIENT  |1231936756         
|Volume              |Price               |Stop Loss           |Take Profit        
|0.03                |1.13471             |0.00000             |0.00000             
|Commission          |Swap                |Profit              |Symbol              |Comment                                  |External ID        
|0.00                |0.00                |0.00                |EURUSD              |                                         |                   
Order:
|Ticket              |Time setup          |Type                |State               |Time expiration     |Time done           |Time setup msc      |Time done msc       |Type filling       
|1231936756          |2022.01.03 06:37:47 |ORDER_TYPE_SELL     |ORDER_STATE_FILLED  |1970.01.01 00:00:00 |2022.01.03 06:37:47 |1641191867527       |1641191867528       |ORDER_FILLING_FOK  
|Type time           |Magic               |Reason              |Position id         |Position by id     
|1970.01.01 00:00:00 |0                   |ORDER_REASON_CLIENT |1231936756          |0                  
|Volume initial      |Volume current      |Open price          |sl                  |tp                  |Price current       |Price stoplimit    
|0.03                |0.00                |1.13471             |0.00000             |0.00000             |1.13471             |0.00000            
|Symbol              |Comment                                  |External id        
|EURUSD              |                                         |                   

Deal:
|Ticket              |Order               |Time                |Time msc            |Type                |Entry               |Magic               |Reason              |Position ID        
|1214696255          |1231936894          |2022.01.03 06:38:43 |1641191923740       |DEAL_TYPE_BUY       |DEAL_ENTRY_OUT      |0                   |DEAL_REASON_CLIENT  |1231936756         
|Volume              |Price               |Stop Loss           |Take Profit        
|0.03                |1.13473             |0.00000             |1.13271             
|Commission          |Swap                |Profit              |Symbol              |Comment                                  |External ID        
|0.00                |0.00                |-0.06               |EURUSD              |                                         |                   
Order:
|Ticket              |Time setup          |Type                |State               |Time expiration     |Time done           |Time setup msc      |Time done msc       |Type filling       
|1231936894          |2022.01.03 06:38:43 |ORDER_TYPE_BUY      |ORDER_STATE_FILLED  |1970.01.01 00:00:00 |2022.01.03 06:38:43 |1641191923740       |1641191923740       |ORDER_FILLING_FOK  
|Type time           |Magic               |Reason              |Position id         |Position by id     
|1970.01.01 00:00:00 |0                   |ORDER_REASON_CLIENT |1231936756          |0                  
|Volume initial      |Volume current      |Open price          |sl                  |tp                  |Price current       |Price stoplimit    
|0.03                |0.00                |1.13473             |0.00000             |0.00000             |1.13473             |0.00000            
|Symbol              |Comment                                  |External id        
|EURUSD              |                                         |          


    AO Three Patterns AO Three Patterns

    Три сигнала индикатора iAO (Awesome Oscillator)

    Simple iAO Martingale Simple iAO Martingale

    Стратегия по индикатору iAO (Awesome Oscillator) с мартингейлом.

    AO Three Patterns EA AO Three Patterns EA

    Торговая стратегия по пользовательскому индикатору 'AO Three Patterns'

    Symbols to Excel Symbols to Excel

    Скрипт выводит в файл csv три колонки: имя символа, цена BID и цена ASK