以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 金老师,请教代码: (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=143912) |
-- 作者:tmxker -- 发布时间:2016/12/2 15:39:27 -- 金老师,请教代码:
后台程序日内交易中,需要统计账户当前品种的日内累计开仓量(多头+空头),请帮助给出代码,谢谢。 |
-- 作者:jinzhe -- 发布时间:2016/12/2 15:57:44 -- if 持仓判断 and 开多条件 then begin extgbdataset(\'kd\',开多手数+extgbdata(\'kd\')); tbuy(1,开多手数,mkt); end
if 持仓判断 and 开空条件 then begin extgbdataset(\'kk\',开空手数+extgbdata(\'kk\')); tbuyshort(1,开空手数,mkt); end if time=closetime(0) then begin extgbdataset(\'kk\',0); extgbdataset(\'kd\',0); end
extgbdata(\'kd\')为一天的开多总量 extgbdata(\'kk\')为一天的开空总量 |
-- 作者:tmxker -- 发布时间:2016/12/2 16:21:11 -- 谢谢,下周我试试。 |
-- 作者:tmxker -- 发布时间:2016/12/6 8:52:49 -- 金老师,我昨天把你‘2楼’给出的代码,加到模型中,并在末尾加了msgout输出,测试结果没有开仓数量输出显示,麻烦你看看,问题出在哪里?请指正。谢谢!
|
-- 作者:jinzhe -- 发布时间:2016/12/6 8:54:11 -- msgout(islastbar,\'开多仓数量=\'+numtostr(extgbdata(\'KD\'),0)); msgout(islastbar,\'开空仓数量=\'+numtostr(extgbdata(\'KK\'),0)); |
-- 作者:tmxker -- 发布时间:2016/12/6 9:21:53 -- 2016/12/06 09:16:13 开多仓数量=32033
金老师,输出的数据量太大!1分钟周期的日内交易,最多开仓量也就是几十手啊? |
-- 作者:jinzhe -- 发布时间:2016/12/6 9:28:44 -- 你的持仓判断是怎么写的? 你先去工具 数据 全局变量这里,清空下全局变量,这个是会叠加昨天的数据 |
-- 作者:tmxker -- 发布时间:2016/12/6 9:57:39 -- 金老师,清空‘全局变量’里的KD/KK数据,显示的开仓数量就正常了。由于我仅需要在日内交易需要计数,那么,是否有方法,在每个日交易日开始,启动软件模型自动初始化“全局变量”里的KD/KK数据为‘0‘’呢?谢谢。 |
-- 作者:jinzhe -- 发布时间:2016/12/6 10:08:31 -- if time=closetime(0) then begin extgbdataset(\'kk\',0); extgbdataset(\'kd\',0); end
这段代码是我之前就写的,目的是在收盘时清空全局变量,不知道你在收盘时有没有运行 |