如果你没有编程基础的话,就在论坛上随便找个VBA程序,就可以学会。
然后,你在order对象里 有下面的一个方法,可以找到你要的信息
Account2 方法
得到指定的国内期货帐户信息
Account2(Type,Account)
Type 指定帐户信息类型。Type可以使用下列数值:
Account 可缺省,登陆的帐户名称,若不填写则表示当前默认的帐户
2 返回指定交易帐户的类型:0盈透 1CTP综合平台 2金仕达平台 255 无效登录账户
3 返回指定交易帐户中的现金余额
4 返回指定交易帐户中的浮动盈亏
6 返回指定交易帐户中的动态权益
12 返回当前交易帐户中的现金总结余
19 返回当前交易帐户中的当前可用资金
20 返回当前交易帐户中的当前流动资产
26 返回当前交易帐户中的上次结算准备金
27 返回当前交易帐户中的期货结算准备金
28 返回当前交易帐户中的占用保证金
29 返回当前交易帐户中的可取资金数量
30 返回当前交易帐户中的平仓盈亏数额
31 返回当前交易帐户中的手续费
32 返回当前交易帐户中的入金金额
33 返回当前交易帐户中的出金金额
34 返回当前交易帐户中的上次信用额度
35 返回当前交易帐户中的上次质压
36 返回当前交易帐户中的质压金额
37 返回当前交易帐户中的信用额度
35 返回当前交易帐户中的冻结保证金
36 返回当前交易帐户中的冻结手续费
37 返回当前交易帐户中的保底资金
41 返回指定或当前交易账户的登录网关名称
用Order.Account2(6,账号)分别检测每一个账号的动态权益,如果为零说明没有登录或者真的没有钱,不管哪种情况,反正不能交易的。
Function zhanghu(Formula)
Dim szhhu
szhhu=Order.CTPAccountName(0)
End Function
这样编写调取活动帐户名称怎么就不对了?
大伙给看看啊,急啊!
Ac=Order.CTPAcCount
application.MsgOut ac
for i=0 to ac-1
application.MsgOut CTPAccountName(i)
next
用这段代码测试一下,看看能不能返回所有已经登陆的账户?
application.MsgOut CTPAccountName(i)
这个地方修改一下, application.MsgOut order.CTPAccountName(i)
这样就可以输出当前活动帐户了。谢谢!
'调用登录帐户数量
Function zhanghu(Formula)
Ac=Order.CTPAcCount
'定义一个计算返回的数组
Dim ResultMa
Redim ResultMa(Ac)
For i=0 to ac-1
ResultMa(i) = Order.CTPAccountName(i)
Next
'返回已经登录的帐户
zhanghu = ResultMa
End Function
我想用自定义函数返回已经登录的帐户,这样写可以吗?如果可以,那么在公式中怎么调用呢?