以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  新周期产生开始计秒怎么写?  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=6277)

--  作者:期指新手
--  发布时间:2011/4/23 11:11:30
--  新周期产生开始计秒怎么写?

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 

 

总好象不对。

[此贴子已经被作者于2011-4-23 11:22:13编辑过]

--  作者:期指新手
--  发布时间:2011/4/23 17:06:22
--  

后台可以这样写吗?

if mod(TIMETOT0(CURRENTTIME),60)=0 then
begin
SLEEP(58000)
TSELL( HOLDING>0 ,0,MARKET);
Tsellshort( HOLDING<0 ,0,MARKET);
end

图表怎么写?

[此贴子已经被作者于2011-4-23 17:07:33编辑过]

--  作者:期指新手
--  发布时间:2011/4/23 19:05:15
--  

秒数:=TIMETOT0(CURRENTTIME)+2;

if mod(秒数,60)=0 then
begin
TSELL( HOLDING>0 ,0,MARKET);
Tsellshort( HOLDING<0 ,0,MARKET);
end

简单有效,图表下这种方法是正解吧,申请加金币,哈哈。


--  作者:阿火
--  发布时间:2011/4/24 21:46:01
--  

这样更简单些。

if mod(currenttime,100)>58 and cond then //cond为下单条件

begin

TSELL( HOLDING>0 ,0,MARKET);
Tsellshort( HOLDING<0 ,0,MARKET);

end