A_GetPosition如何获取持仓
A_GetPosition:False请帮忙看下哪里写错了?
A_GetPosition:False请帮忙看下哪里写错了?
a函数是调用真实数据的 你没关联账户 调取不到数据
回复:开始没关联,后来的截图是关联了的,A_GetAaccourt,:True,能获取到账户资金情况,A_GetPosition:False。
回复:Params String AccountName("66133512"); Vars Account acc; Position pos; Events OnInit() OnReady() { Bool ret = A_GetAccount(acc, AccountName); //Bool ret1 = A_GetPosition(pos,"",0); Print("A_GetAccount:" + IIFString(ret,"True","False"));// + ",value:" + Text(acc)); Bool ret1 = A_GetPosition(Symbol, pos, "", 0); Print("A_GetPosition:" + IIFString(ret1, "True", "False"));// + "," + Text(pos)); Print("A_AccountCount:" + Text(A_AccountCount)); Numeric value = A_SellPosition(); Print("A_SellPosition:" + Text(value)); Bool ret2 = A_GetPosition(pos, "", 0); Print("A_GetPosition:" + IIFString(ret2, "True", "False")); }帮忙看下。谢谢!
回复:哪里关联了A_AccountCount=0 不就是一个账户都没关联
回复:解决了,非常感谢!以为登录账号A_GetAaccourt=True,就可以了呢。感谢老师!也感谢这个社区!
回复:打扰您,再请教一下。为什么A_GetPosition里看不到我的持仓?谢谢!
回复:这种情况可以看下A_GetPosition的帮助文档它有两个用法:一个是获取当前合约,一个是获取指定合约你这个问题应该是:不可能有888的持仓888并不是可以交易的合约,如果你持有当前888的主力合约那么你应该A_GetPosition(mainsymbol, pos, "", i); 或者 A_GetPosition(relativesymbol, pos, "", i);如果你要获取全部账户的持仓,要先获取代码A_GetPositionSymbols,再依次获取持仓
回复:已经是i高手了👍
回复:解决了!两种方法的结果一样:A_GetPosition:True,brokerId = 482, accountId = 66134693, accountIndex = 0, tradingDay = 20260512.000000, symbol = fu2606.SHFE, longCurrentVolume = 2, longMarketValue = 89300.000000, longAvgPrice = 4455.000000, longFloatProfit = 200.000000, longAvgPriceO = 4455.000000, longFloatProfitO = 200.000000, longUseMarginAmount = 29403.000000, longCanSellVolume = 2,commission = 13.370000, flag = 4)(略去了数值为0的字段)不愧是刘老师眼中的高手!!感谢高手老师!感谢刘老师!感谢社区和平台!