MT5APIConfirm.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. //+------------------------------------------------------------------+
  2. //| MetaTrader 5 API |
  3. //| Copyright 2000-2019, MetaQuotes Software Corp. |
  4. //| http://www.metaquotes.net |
  5. //+------------------------------------------------------------------+
  6. #pragma once
  7. //+------------------------------------------------------------------+
  8. //| Trade request confim interface |
  9. //+------------------------------------------------------------------+
  10. class IMTConfirm
  11. {
  12. public:
  13. //--- confirm flags
  14. enum EnConfirmFlags
  15. {
  16. CONFIRM_FLAG_NONE=0, // none
  17. CONFIRM_FLAG_TICK=1, // add quoted price into MT5 price stream
  18. //--- enumeration borders
  19. CONFIRM_FLAG_ALL =CONFIRM_FLAG_TICK
  20. };
  21. //--- common methods
  22. virtual void Release(void)=0;
  23. virtual MTAPIRES Assign(const IMTConfirm* confirm)=0;
  24. virtual MTAPIRES Clear(void)=0;
  25. virtual LPCWSTR Print(MTAPISTR& string) const=0;
  26. //--- request id
  27. virtual UINT ID(void) const=0;
  28. virtual MTAPIRES ID(const UINT id)=0;
  29. //--- confirmation retcode
  30. virtual MTAPIRES Retcode(void) const=0;
  31. virtual MTAPIRES Retcode(const MTAPIRES retcode)=0;
  32. //--- confirmed volume
  33. virtual UINT64 Volume(void) const=0;
  34. virtual MTAPIRES Volume(const UINT64 volume)=0;
  35. //--- confirmed price
  36. virtual double Price(void) const=0;
  37. virtual MTAPIRES Price(const double price)=0;
  38. //--- confirmed tick bid
  39. virtual double TickBid(void) const=0;
  40. virtual MTAPIRES TickBid(const double tickbid)=0;
  41. //--- confirmed tick ask
  42. virtual double TickAsk(void) const=0;
  43. virtual MTAPIRES TickAsk(const double tickask)=0;
  44. //--- confirmed tick last
  45. virtual double TickLast(void) const=0;
  46. virtual MTAPIRES TickLast(const double ticklast)=0;
  47. //--- confirmation comment
  48. virtual LPCWSTR Comment(void) const=0;
  49. virtual MTAPIRES Comment(LPCWSTR comment)=0;
  50. //--- flags
  51. virtual UINT Flags(void) const=0;
  52. virtual MTAPIRES Flags(const UINT flags)=0;
  53. //--- linked deal id in external system
  54. virtual LPCWSTR DealID(void) const=0;
  55. virtual MTAPIRES DealID(LPCWSTR deal_id)=0;
  56. //--- linked order id in external system
  57. virtual LPCWSTR OrderID(void) const=0;
  58. virtual MTAPIRES OrderID(LPCWSTR order_id)=0;
  59. //--- execution price on gateway
  60. virtual double PriceGateway(void) const=0;
  61. virtual MTAPIRES PriceGateway(const double price)=0;
  62. //--- linked position ticket in external system
  63. virtual LPCWSTR PositionExternalID(void) const=0;
  64. virtual MTAPIRES PositionExternalID(LPCWSTR id)=0;
  65. //--- external trade system return code
  66. virtual int ExternalRetcode(void) const=0;
  67. virtual MTAPIRES ExternalRetcode(const int retcode)=0;
  68. //--- confirmed volume with extended accuracy
  69. virtual UINT64 VolumeExt(void) const=0;
  70. virtual MTAPIRES VolumeExt(const UINT64 volume)=0;
  71. };
  72. //+------------------------------------------------------------------+