The CHistoryPositionInfo class is designed for getting the profit of a position in points based on the trading history.
Class Description
The CHistoryPositionInfo class allows getting the profit of a position in points based on the trading history.
Declaration
class CHistoryPositionInfo : public CArrayObj
Title
#include <HistorySelect_\HistoryPositionInfo.mqh>
Class Methods by Groups
Initialization | |
---|---|
Init | Initialization using a position ID |
Access to the calculation result |  |
GetProfitInPoints | Getting the profit of a position in points |
Setting parameters | Â |
LogErrors | Enable/disable logging of errors |
PrintDeals(const bool value)Â | Enable/disable deal print mode |
Printing deals | Â |
PrintDeals(void) | Printing the deals that formed the position |
An example of using CHistoryPositionInfo:
//+------------------------------------------------------------------+ //|                                      TestHistoryPositionInfo.mq5 | //|                              Copyright © 2017, Vladimir Karputov | //|                                          | //+------------------------------------------------------------------+ #property copyright "Copyright © 2017, Vladimir Karputov" #property link      "" #property version  "1.003" #property script_show_inputs //--- input long position_id=0;                    // position identifier - POSITION_IDENTIFIER input bool log_errors=true;                  // logging errors input bool print_deals=true;                // print deals #include <HistorySelect_\HistoryPositionInfo.mqh> //+------------------------------------------------------------------+ //| Script program start function                                    | //+------------------------------------------------------------------+ void OnStart()   { //---   Print("\nSearch deals with POSITION_IDENTIFIER ",IntegerToString(position_id));   CHistoryPositionInfo HistoryPositionInfo; //--- init position identifier   HistoryPositionInfo.Init(position_id); //--- los errors   HistoryPositionInfo.LogErrors(log_errors); //--- print deals   HistoryPositionInfo.PrintDeals(print_deals); //---   double profit_in_points=0.0;   if(HistoryPositionInfo.GetProfitInPoints(profit_in_points))       Print("Profit in points ",DoubleToString(profit_in_points,1));   else       Print("GetProfitInPoints=false");   } //+------------------------------------------------------------------+