请问一下我这样每天初始化全局变量正确吗?
IF TIME>=090100 AND TIME<091500 THEN
BEGIN
EXTGBDATASET('TOTAL_BVOL',0) ; //当天日内多头总持仓
EXTGBDATASET('TOTAL_SVOL',0) ; //当天日内空头总持仓
END
但是运行的时候没有没有帮我归零,请问是为什么呢?
【jinzhe回复】
运行在股指上?
改成
currenttime>091501 and currettime<091515
金字塔3.01版对全局变量做了调整.
建议你使用 Virable变量, EXTGBDATASET这种超全局变量数据库不要用在这个地方 |
【eric917 回复】
意思就是0915之前是不能初始化全局变量咯?
我下面还有一个语句想在开盘的一刻立即开一行多单和一张空单
下面这样写可以实现吗?
IF TIME>=091500 AND TIME<=091505 AND EXTGBDATA('BKV_G0')=0 THEN
BEGIN
TBUY(1,SS,MKT);
EXTGBDATASET('BKV_G0',1) ; //G0的多头仓位标记为1,持有多头
EXTGBDATASET('TOTAL_BVOL',EXTGBDATA('TOTAL_BVOL')+SS); //系统当天所持有的总多头持仓 + 手数
END
IF TIME>=091500 AND TIME<=091505 AND EXTGBDATA('SKV_G0')=0 THEN
BEGIN
TBUYSHORT(1,SS,MKT);
EXTGBDATASET('SKV_G0',1) ; //G0的空头仓位标记为1,持有空头
EXTGBDATASET('TOTAL_SVOL',EXTGBDATA('TOTAL_SVOL')+SS); //系统当天所持有的总空头持仓 + 手数
END
但要使用后台程序化,不是说只能用EXTGBDATASET 这种吗?
我都模型是日内模型,我想每天开盘前都运行它,它都会自动把该模型的全局变量归零,再开始当天的交易
那应该使用哪种变量比较好呢?谢谢
Virable变量 好像只能在图表吧,在后台现在那种变量会比较稳定啊?有点混乱了 |
【eric917 回复】
谢谢,现在3个问题(股指,后台程序化)
1) 我使用后台程序化是使用 EXTGBDATASET 还是 其他的变量比较稳定适合?.
2)我想在开盘的一刻,立即开一张多单一张空单,锁仓,请问可以实现吗?
如果要实现,应该怎么写呢?谢谢
3)如果我想股指开盘前 自动初始化全部的全局变量(在2)之前就要初始化),这个请问可以实现吗?
【jinzhe回复】
1. 用ext
2
if dynainfo(207)>091501 and dynainfo(207)<091505 then begin
tbuy(tbuyholdingex('','',0)=0,1,mkt);
tbuyshort(tsellholdingex('','',0)=0,1,mkt);
end
3.if currenttime>090001 and currettime<091458 then begin
全局变量定义语句;
end
要在开盘前启动
【王峰回复】
1,EXTGBDATASET 使用的地方主要是用来存放断电保存全局状态,也就是重启金字塔也能保存的状态,只要有这个需要,你就可以使用他.
问题2,假设你是在1分钟K线运行,那么这样就可以
IF TIME=091600 THE
BEGIN
......
END
注意金字塔的K线时间是没有091500的,假设是09点15开盘,那么第一根K线的时间是091600
3,要在开盘前初始化动作,有一些后台设置要搞的.
首选你要勾选不间断监控,并选择固定轮循模式运行后台程序化.
然后代码这样写
IF CURRENTTIME>=091300 AND CURRENTTIME<091500THE
BEGIN
...... 初始化动作
END
【eric917 回复】
谢谢
2)请问一下dynainfo(207) 是什么意思呢?
如果我不是使用tbuy(tbuyholdingex('','',0)=0,1,mkt);,而是使用原来的TBUY(1,SS,MKT);这样可以吗?
3)请问一下time和currenttime有什么区别呢?
补充:
问题2,假设你是在1分钟K线运行,那么这样就可以
IF TIME=091600 THE
BEGIN
......
END
注意金字塔的K线时间是没有091500的,假设是09点15开盘,那么第一根K线的时间是091600
你好,请问如果是5分钟K线,就要写成092000吗?
[此贴子已经被作者于2013/12/30 17:42:23编辑过]