模拟K线下记录的当然是虚拟的开、平仓了。
将持仓信息写入到Excel并进行盈亏管理那个帖子记录的实际持仓,同时监控实时价格变化,进行止盈或止损交易。
逐笔记录写到Excel的大致思路如下:
1、在Application_VBAStart过程中打开Excel,这个的代码在《持仓信息写入到Excel并进行盈亏管理》一贴中有完整的代码
2、在Order_OrderStatusEX2过程中捕获Status="Filled"的记录,那就是成交记录,将这些数据传递到写Excel的过程
3、在写Excel主笔成交记录过程中,根据当前交易的开、平仓类型确定是否要写一行新记录:
A)如果是开仓记录(Kaiping=0)就自动写一行新记录,当然,需要根据当前成交的账号分别写进不同的工作表;
B)如如果是平仓记录(Kaiping=1),就寻找excel中已经写了开仓记录没有写平仓记录的行,将本次的成交价格写进去;
C)并计算本次交易的手续费,加上开仓时的手续费,平仓盈亏-手续费就是本次交易的盈亏金额。
为了计算手续费,需要使用Order.ChargeByNum(Code,Market,Price,1,Aspect)函数,还需要取出本次交易的品种对应的合约乘数,
使用Order.Contract(sCode,sMarket,Multipliter,MinTick,ShortPercent,LongPercent)
D)写动态权益,使用Order.Account2
4、收盘后自动进行求和,并写日汇总表。
[此贴子已经被作者于2011-10-25 17:35:12编辑过]