有个想法:1、当天出现了涨停,之后就不允许再开空。2、当天出现了跌停,之后就不允许再开多。股票涨跌停都是10%,但是期货每个品种的涨跌停都不一样。
这里以涨停为例:
问题一、这里涨停如何表示:1、卖一价=0;2、最新价=涨停,DYNAINFO(7)=DYNAINFO(54)。是2个里的哪一个,还是别的写法?
问题二、在如下代码中,怎么表示出现了涨停,之后就不允许再开空,具体应该怎么写?
A2:=ref(llv(l,M),1);
Short:=l<A2 and time>090300 and time<145200;
if short then
begin
sell(holding>0,0,limitr,A2),ORDERQUEUE;
end
if short and holding=0 then
begin
buyshort(holding=0,10,limitr,A2),ORDERQUEUE;
end
DYNAINFO(7)=DYNAINFO(54);
使用这个方法是最好的,因为金字塔会根据不同的期货品种得到正确的涨停价
DYNAINFO函数是常数,无法返回序列数值,所以不能使用在图表程式化交易以及测试,只能用于后台。
请论坛搜索DYNAINFO的历史讨论,这里不再多加叙述
http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=1907
涨停:= IF(DATE=CURRENTDATE ,DYNAINFO( 54 ) ,昨日结算价*(1+品种涨跌幅限制) ) ;
跌停:= IF(DATE=CURRENTDATE ,DYNAINFO( 55 ) ,昨日结算价*(1-品种涨跌幅限制) ) ;
其中:昨日结算价和品种涨跌幅限制自己建公式变量.
问题二、怎么表示出现了涨停,之后不管价格怎么变动,都不允许再开空,具体应该怎么写?
if DYNAINFO(7)<DYNAINFO(54) then
tbuyshort(short and holding=0,10,lmt,A2),ORDERQUEUE;
else
xxx;//这里怎么表示出现了涨停,之后不管价格怎么变动,都不允许再开空
取今天开盘到当前时间的最高价,时间是不固定的,不知道怎么写,望版主赐教