Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共14 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:如何记录前一天的持仓。

1楼
qq代人发帖 发表于:2020/3/4 14:50:04

请教:如何记录前一天的持仓。最近被持仓问题搞疯。全局变量,内置数据库都用了。

有没有什么好办法记录前一天的持仓情况。好让策略能在前一天持仓的基础上继续运行?

2楼
FireScript 发表于:2020/3/4 14:53:35
 你是图表程序化?还是后台程序化?
具体操作过程能否说明下。
[此贴子已经被作者于2020/3/4 14:57:12编辑过]
3楼
starmichael 发表于:2020/3/4 15:24:30
是后台操作
4楼
FireScript 发表于:2020/3/4 15:32:20
后台读取的就是账号最新的状态,也就是昨日最后的仓位情况。你这还需要记录啥呢?
5楼
wenarm 发表于:2020/3/4 15:33:29

1.这种状态记录,只能选择在某个时间点,将其写入到ext全局变量中。

2.你这种操作实际上没有多大意义。不知道你记历史做什么用。

 

 

6楼
starmichael 发表于:2020/3/4 21:42:19
1. 因为有多策略。所以要分清各个策略的持仓情况。
2. 因为第二天,策略重新运行。如果没有昨天的开仓状态,就会出现重复开仓的现象。
7楼
wenarm 发表于:2020/3/4 22:05:20

1您这种需求,最好的解决办法是多账户。别的想区分策略持仓的方法都无法满足。

2在后台中,这种情况是不存在的。虽然重新启动运行,但是之前的开平信号等记录都还是在的。对其操作不可能丢。

你说的重复下单,指的是什么?后台不会对历史信号操作。

 

建议你把完整代码贴出来给我们看下。

8楼
starmichael 发表于:2020/3/5 9:13:06
2020-03-04 14:54:02.790    -================open=4153.00=====================
2020-03-04 14:54:03.009    Holding=0.000
2020-03-04 14:54:03.009    vHolding=0.000
2020-03-04 14:54:03.009    rAG1vHolding=0.000
2020-03-04 14:54:03.025    --------------------------------- End of Data close=4151.00-----------------------
2020-03-04 14:57:02.587    workmode=1.000
2020-03-04 14:57:02.587    -================open=4151.00=====================
2020-03-04 14:57:02.775    Holding=0.000
2020-03-04 14:57:02.775    vHolding=0.000
2020-03-04 14:57:02.790    rAG1vHolding=0.000
2020-03-04 14:57:02.790    --------------------------------- End of Data close=4153.00-----------------------
这是昨晚系统记录的持仓情况。


2020-03-05 09:00:08.635    workmode=1.000
2020-03-05 09:00:08.641    -================open=4153.00=====================
2020-03-05 09:00:08.858    Holding=2.000
2020-03-05 09:00:08.865    vHolding=2.000
2020-03-05 09:00:08.872    rAG1vHolding=2.000
2020-03-05 09:00:08.879    --------------------------------- End of Data close=4155.00-----------------------
2020-03-05 09:03:02.431    workmode=1.000
2020-03-05 09:03:02.446    -================open=4147.00=====================
2020-03-05 09:03:02.587    Holding=2.000
2020-03-05 09:03:02.587    vHolding=2.000
2020-03-05 09:03:02.587    rAG1vHolding=2.000
这是今早开盘记录的持仓信息。
一开盘,我就有了两个持仓。而实际情况是,仓位在昨天就清空了。
也就是今天开盘的持仓和昨天的持仓没有衔接上,而是又新计算了一个持仓。
9楼
FireScript 发表于:2020/3/5 9:21:50
 你这个输出的代码怎么写的啊。贴下看下。
10楼
starmichael 发表于:2020/3/5 9:57:31
VARIABLE:vHolding=IF(workmode=3 or workmode=0,0,EXTGBDATA('AG1vHOLDING'));

。。。。。。

IF (workmode=1 or workmode=2) THEN
BEGIN
EXTGBDATASET('AG1vHolding',vHolding);
rAG1vHolding:EXTGBDATA('AG1vHolding'),LINETHICK0;
END

IF ISLASTBAR  and (workmode=1 or workmode=2) THEN
BEGIN
DEBUGFILE(debugfilename,'-================open=%.2f=====================',open);
DEBUGFILE(Debugfilename,'Holding=%.3f',Holding);//输出vHolding
DEBUGFILE(Debugfilename,'vHolding=%.3f',vHolding);//输出vHolding
DEBUGFILE(Debugfilename,'rAG1vHolding=%.3f',rAG1vHolding);//输出vHolding
DEBUGFILE(debugfilename,'--------------------------------- End of Data close=%.2f-----------------------',close);
END


共14 条记录, 每页显示 10 条, 页签: [1] [2]


Powered By Dvbbs Version 8.3.0
Processed in 0.03906 s, 3 queries.