请问这两个算持仓的函数的区别是什么 (文华财经WH8赢智V8.2)

投资者咨询:请问这两个算持仓的函数的区别是什么 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2019-4-10 13:21
模型某合约多头持仓。
用法:
AA.F_BuyPosition()返回AA模组的多头持仓

注:
1、该函数前必须用AA.的形式来调用,其中AA为字符串变量或者模组名。该函数不能单独使用。
2、只有在对应的模组源码中写入SETMODRUNTYPE(0)或者不写入SETMODRUNTYPE函数时,即按照模组中设置的信号执行方式出信号并下单时,该函数才可以取到值。

例:
VAR fmlBVol; 
fmlBVol=AA.F_BuyPosition(); //定义一个变量fmlBVol,fmlBVol为AA模组的多头持仓。



取已经初始化的空头持仓","取已经初始化的空头持仓。
用法:
AA.F_InitSellVol 返回模型初始化的空头持仓(整数).

注:
1、该函数前必须用AA.的形式来调用,其中AA为字符串变量或者模组名。该函数不能单独使用。
2、只有在对应的模组源码中写入SETMODRUNTYPE(0)或者不写入SETMODRUNTYPE函数时,即按照模组中设置的信号执行方式出信号并下单时,该函数才可以取到值。

例:
VAR initSellVol;//定义一个变量记录初始空头持仓
initSellVol=AA.F_initSellVol();//取出初始空头持仓赋值给initSellVol

技术人员回复
日期:2019-4-10 13:31
AA.F_BuyPosition(); //

取得是模组的多头持仓

AA.F_InitBuyVol();

取得是清除历史信号重新运行时,手动带入的初始多头持仓。

   
投资者咨询:请问这两个算持仓的函数的区别是什么 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2019-4-10 13:21
 我测试了。

两个函数返回的永远是0

无法返回正确的持仓
技术人员回复
日期:2019-4-11 10:27

下图中,带入持仓为 多头6手  模组运行没有产生持仓,所以 AA.F_BuyPosition(); 取值为0

 

您可能存在的问题

 

1:   算法函数 AA.F_BuyPosition(); 中的“AA” 应与模组名称对应,例:

 

   MOD="螺纹1905_1分钟_BKSP(1)";
   A=MOD.F_InitBuyVol();

 

2:您模组没有带入持仓,所以AA.F_InitBuyVol(); 取值为0  没有产生持仓 所以AA.F_BuyPosition(); 为0

 

3:您是想取模组持仓还是账户的实际持仓?  如果要取账户的实际持仓,您可以使用T_BuyPosition()函数

图片点击可在新窗口打开查看

 
投资者咨询:请问这两个算持仓的函数的区别是什么 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2019-4-10 13:21
 你好,我要的是实际持仓。用的是模拟账户

然后我两个函数多测试了,有持仓的时候返回的都是0

使用这个函数需要等待时间吗? 

因为实盘的话,其实查询持仓到交易所返回,需要一个时间差吧
技术人员回复
日期:2019-4-11 13:10
您是想取账户的实际持仓 

建议您使用  T_BuyPosition()  函数

具体用法可在函数说明中查看
投资者咨询:请问这两个算持仓的函数的区别是什么 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2019-4-10 13:21
 BKPOST2 = MOD.F_BuyPosition();
MessageOut("【SP信号:持仓:" + BKPOST2 + "手!】");

我用这样的方式来测试。 打印出来的永远是0