【求助】mql5编程问题

 

1在手册里提到了一点我不明白的地方,请向我解释一下:

      如果允许单独持仓 (ACCOUNT_MARGIN_MODE_RETAIL_HEDGING),那么可为一个交易品种打开多个持仓。在此时

bool  PositionSelect(
   string  symbol      // 交易品种名称
   );

以及

long  PositionGetInteger(
   ENUM_POSITION_PROPERTY_INTEGER  property_id      // 属性标识符
   );


这两个函数仅能返回一个持仓,那在执行过程中,不就会影响对同时创建多个仓位的情况的处理吗?

2在cexpert.mqh头文件中的cexpext类中

有以下四个涉及到仓位关闭的函数

   virtual bool      CloseAll(double lot);

   virtual bool      Close(void);

   virtual bool      CloseLong(double price);

   virtual bool      CloseShort(double price);

除了close()函数是根据类型关闭以外,其余都是根据持仓价格关闭,此时只能关闭一个持仓,岂不是会影响对冲类型ea的处理?

本人在此处遇到瓶颈,希望大佬指点。

 
xkyup:

1在手册里提到了一点我不明白的地方,请向我解释一下:

      如果允许单独持仓 (ACCOUNT_MARGIN_MODE_RETAIL_HEDGING),那么可为一个交易品种打开多个持仓。在此时

bool  PositionSelect(
   string  symbol      // 交易品种名称
   );

以及

long  PositionGetInteger(
   ENUM_POSITION_PROPERTY_INTEGER  property_id      // 属性标识符
   );


这两个函数仅能返回一个持仓,那在执行过程中,不就会影响对同时创建多个仓位的情况的处理吗?

2在cexpert.mqh头文件中的cexpext类中

有以下四个涉及到仓位关闭的函数

   virtual bool      CloseAll(double lot);

   virtual bool      Close(void);

   virtual bool      CloseLong(double price);

   virtual bool      CloseShort(double price);

除了close()函数是根据类型关闭以外,其余都是根据持仓价格关闭,此时只能关闭一个持仓,岂不是会影响对冲类型ea的处理?

本人在此处遇到瓶颈,希望大佬指点。

英文和俄语文档里有说明,中文版更新较慢。

If individual positions are allowed (ACCOUNT_MARGIN_MODE_RETAIL_HEDGING), multiple positions can be open for one symbol. In this case, PositionSelect will select a position with the lowest ticket.

对于 HEDGING 账户,PositionSelect(Symbol) 返回单号最小的那一笔。

 
Xiangdong Guo:

英文和俄语文档里有说明,中文版更新较慢。

If individual positions are allowed (ACCOUNT_MARGIN_MODE_RETAIL_HEDGING), multiple positions can be open for one symbol. In this case, PositionSelect will select a position with the lowest ticket.

对于 HEDGING 账户,PositionSelect(Symbol) 返回单号最小的那一笔。

谢谢,那请问在cexpert.mqh头文件中的cexpext类中,四个涉及到关闭仓位的函数都是根据持仓价格或者类型平一个仓位,如果要平多个仓位是不是要继承cexpect类后,建一个函数循环关闭所有要平的仓位?

 
xkyup:

谢谢,那请问在cexpert.mqh头文件中的cexpext类中,四个涉及到关闭仓位的函数都是根据持仓价格或者类型平一个仓位,如果要平多个仓位是不是要继承cexpect类后,建一个函数循环关闭所有要平的仓位?

既然你已经研究过了,那自然需要自己实现喽。

 
Xiangdong Guo:

既然你已经研究过了,那自然需要自己实现喽。


非常感谢您对我的帮助