1秒轮询情况下,产生新的周期(新的K线)就开始计秒,比如1分钟周期,一产生新的周期就开始计秒,在58秒时判断一下条件是否成产,成立就执行(也就是说在每个周期收盘前多加一个判断)。如何写?
周期:=BARSLAST(DATE>REF(DATE,1))+1;
if 周期>ref(周期,1) then
begin
if mod(TIMETOT0(CURRENTTIME),58)=0 then
begin
SELL( HOLDING>0 ,0,MARKET);
sellshort( HOLDING<0 ,0,MARKET);
end
总好象不对。
后台可以这样写吗?
if mod(TIMETOT0(CURRENTTIME),60)=0 then
begin
SLEEP(58000)
TSELL( HOLDING>0 ,0,MARKET);
Tsellshort( HOLDING<0 ,0,MARKET);
end
图表怎么写?
秒数:=TIMETOT0(CURRENTTIME)+2;
if mod(秒数,60)=0 then
begin
TSELL( HOLDING>0 ,0,MARKET);
Tsellshort( HOLDING<0 ,0,MARKET);
end
简单有效,图表下这种方法是正解吧,申请加金币,哈哈。
这样更简单些。
if mod(currenttime,100)>58 and cond then //cond为下单条件
begin
TSELL( HOLDING>0 ,0,MARKET);
Tsellshort( HOLDING<0 ,0,MARKET);
end