以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  策略编写求助区  (http://222.73.7.161/bbs/list.asp?boardid=11)
----  请前辈们帮写一个策略  (http://222.73.7.161/bbs/dispbbs.asp?boardid=11&id=9297)

--  作者:hj339
--  发布时间:2011/12/9 8:41:30
--  请前辈们帮写一个策略

在1分钟周期上,对股指期货,

如果A条件成立时开空1手

      价位回调到开仓价位时平空

       B条件成闰时开多1手

      价位回调到开仓价位时平多

并且获利超过进场价位20个点以上时,从获利最高下来50%时,止赢;3点15分如果还有仓位则全部现价平仓(要保证成交)。


--  作者:26327756l
--  发布时间:2011/12/9 9:06:46
--  
问题正在解决中
--  作者:26327756l
--  发布时间:2011/12/9 9:15:10
--  

仅供参考

条件自己填


variable:hl=0;

A:=;
if a then
begin
  buy(holding=0,1,market);
  sell(holding>0,0,limit,c);//开仓后限价挂单平仓
end
b:=;
if b then
begin
   buyshort(holding=0,1,market);
   sellshort(holding<0,0,limit,c);   //限价挂单平仓
end


//并且获利超过进场价位20个点以上时,从获利最高下来50%时,止赢;3点15分如果还有仓位则全部现价平仓(要保证成交)。
 if  OPENPROFIT/mindiff>20 then hl:=1;
 if hl=1 and OPENPROFIT/mindiff<10 then //盈利20 点后回落到10 点 止盈
 begin
   sell(holding>0,0,market);
   sellshort(holding<0,0,market);
    hl:=0;
 end
 if time>151400 then  //15点14 分市价平仓
  begin
   sell(holding>0,0,market);
   sellshort(holding<0,0,market);
  end

[此贴子已经被作者于2011-12-9 9:15:37编辑过]

--  作者:hj339
--  发布时间:2011/12/9 9:19:09
--  
谢谢了,先看看
--  作者:hj339
--  发布时间:2011/12/9 9:48:07
--  

INPUT:NMIN(45,10,60,10); //设置参数时

VARIABLE:FLAG_D=0,FLAG_K=0; //控制多单和空单

VARIABLE:STOP_P=0; //用于变动止损

CYC:=BARSLAST(DATE>REF(DATE,1))+1; //统计日内K线数

HH:VALUEWHEN(TIME<=91500+NMIN*100,HHV(H,CYC)); {在从开盘到设定时间(默认参数开盘39分)内保存当天最高价}

LL:VALUEWHEN(TIME<=91500+NMIN*100,LLV(L,CYC)); {在从开盘到设定时间(默认参数开盘39分)内保存当天最低价}

variable:hl=0;

A:=c<=ll;
if a then
begin
  buy(holding=0,1,market);
  sell(holding>0,0,limit,c);//开仓后限价挂单平仓
end
b:=c>=hh;
if b then
begin
   buyshort(holding=0,1,market);
   sellshort(holding<0,0,limit,c);   //限价挂单平仓
end


//并且获利超过进场价位20个点以上时,从获利最高下来50%时,止赢;3点15分如果还有仓位则全部现价平仓(要保证成交)。
 if  OPENPROFIT/mindiff>20 then hl:=1;
 if hl=1 and OPENPROFIT/mindiff<10 then //盈利20 点后回落到10 点 止盈
 begin
   sell(holding>0,0,market);
   sellshort(holding<0,0,market);
    hl:=0;
 end
 if time>151400 then  //15点14 分市价平仓
  begin
   sell(holding>0,0,market);
   sellshort(holding<0,0,market);
  end

 帮看看哪里不对,加入了开盘45分钟最高价突破开多,开盘45分钟最低价开空,可图上信号是乱的