以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- 请改进一个函数 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=70353) |
-- 作者:ZZAASSXX -- 发布时间:2014/9/24 10:01:03 -- 请改进一个函数 关于TTOTALDAYTRADE是指日内已平仓交易次数。 它是根据后台的交易记录,有一条平仓就统计一条,但是它不能过滤已产生平仓记录但是事实是撤单的交易记录,如下图 今日一共有2笔已经完成的交易,其中第二笔9:42:00挂单没有成交,撤单后继续挂后来成交了。但是这个一条记录是平多,用了这个函数就会统计这笔交易量为0但是确没有成交的记录。导致后台调试的累计交易盈亏是2笔(720+0)。正确的应该是720+780.
|
-- 作者:FexTel -- 发布时间:2014/9/24 10:06:44 -- 1,报单没成交,撤单。或者市价报单价格未返回都会造成实际成交价格为0 这边如果统一都不做计算的话,会影响实际交易策略的判断把
2,如果说光处理撤单的情况,没有判断依据啊 |
-- 作者:zzaassxx -- 发布时间:2014/9/24 10:08:42 -- 这个函数好像没有问题,是我提问没有到点子上,TTOTALDAYTRADE返回的确实是2笔,我该如何写语句,取得当日累计交易盈亏呢? |
-- 作者:FexTel -- 发布时间:2014/9/24 10:12:49 -- TACCOUNT(30) 要账户全部是后台交易,直接取账户当日的平仓盈亏 |
-- 作者:zzaassxx -- 发布时间:2014/9/24 10:18:20 -- 是后台交易。这个TACCOUNT(30)取到的是总的账户的交易盈亏?,在账户里有多品种的情况下,我仅仅要统计取得某一个品种的当日累计交易盈亏呢? |
-- 作者:FexTel -- 发布时间:2014/9/24 10:30:06 -- 那只能一步步统计,使用GLOBALVARIABLE记录把。平仓一次值叠加下 |
-- 作者:zzaassxx -- 发布时间:2014/9/24 11:02:14 -- if TTOTALDAYTRADE>0 then begin
for i=1 to TTOTALDAYTRADE do begin
交易盈亏:=TNUMPROFIT(i);
累计交易盈亏:=累计交易盈亏+交易盈亏;
end end 我是这么写的,现在看来TTOTALDAYTRADE是返回的2笔正确,但是TNUMPROFIT会把那笔撤单没有成交的给统计上,需要改进的是TNUMPROFIT函数。
|
-- 作者:FexTel -- 发布时间:2014/9/24 11:06:00 -- 即使取值的话函数当时返回的值不是0?难道是上上一笔的盈亏么? |