以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=160216)

--  作者:kaifang
--  发布时间:2017/12/7 10:00:02
--  求助帮忙写下代码,不会
开多条件:15分钟、1小时图上,收盘价均大于ma22,开多1手;如果上个单子亏损,则跳过接下来的两个交易信号。
止损止盈:开仓后,10跳止损,50跳止盈;
平仓条件:15分钟上,连续两根K线收盘价高于ma22,平仓;或者15分钟收盘价跌破ma22且收盘价比照ma22下跌超过0.5%,平仓。

开空条件:15分钟、1小时图上,收盘价均小于ma22,开空1手;如果上个单子亏损,则跳过接下来的两个交易信号。
止损止盈:开仓后,10跳止损,50跳止盈;
平仓条件:15分钟上,连续两根K线收盘价高于ma22,平仓;或者15分钟收盘价跌破ma22且收盘价比照ma22下跌超过0.5%,平仓。

--  作者:fly
--  发布时间:2018/1/3 10:08:05
--  

我们将按照策略运行在15分钟K线上,给您编写。

 

15分钟收盘价跌破ma22,且 收盘价比照ma22下跌超过0.5%,这个是指 (ma22-收盘价)/ma22大于等于0.5%吗?


--  作者:gxx978
--  发布时间:2018/1/3 16:37:10
--  

以下两点需要确认:

1、开多条件中,上个单子亏损是如何定义的,是指上次平仓亏损还是上次开仓后的浮动亏损?若是浮动亏损,那出现亏损时,跳过一个信号后,第2个开仓信号是又不亏损了,该继续开仓还是不开?

2、15分钟、1小时图上,收盘价均大于ma22,这里是定义为cross突破,还是直接>表示?

 

以下是写的案例(以多头为例),仅供模拟测试参考

variable:n=0; //标记亏损后,满足开仓条件的次数

 

ma22:ma(c,22);

ma60:CALLSTOCK(STKLABEL,vtclose,5,-1);   

if cross(c,ma22) and cross(ma60,ma22) and (n=0 or n>2) then  //平仓后首次开仓或亏损后满足2次开仓条件后才开仓
   begin
   buy(1,1,market);
   end 
if c>ma22 and ma60>ma22 and  NUMPROFIT(1)<0 then
   n:=n+1;                                                                             //统计上次平仓亏损以来,满足开仓的条件个数 
if (c<ma22 and ref(c,1)<ma22) or (c<ma22 and (ma22-c)/ma22>=0.05)  then    //平仓条件
   begin
   sell(holding>0,holding,market);
   n:=0;
   end
if c-enterprice>50*mindiff then                       //止盈条件
   begin
   sell(holding>0,holding,market);
   n:=0;
   end
if enterprice-c>10*mindiff then                       //止损条件
   begin
   sell(holding,holding,market);
   n:=0;
   end

    

[此贴子已经被作者于2018/1/3 16:38:46编辑过]