欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件策略编写求助区 → [求助]2金币求助一个图表交易系统下的策略编写

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有9792人关注过本帖树形打印复制链接

主题:[求助]2金币求助一个图表交易系统下的策略编写

帅哥哟,离线,有人找我吗?
yh_tl
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:134 威望:0 精华:0 注册:2012/5/8 8:46:41
  发帖心情 Post By:2012/11/20 11:53:19 [显示全部帖子]

免责声明:本人也是初学者,因为对楼主的止损策略感了兴趣,所以试着写了这个策略,有不对的地方请大家指正。

 

经测试,楼主的第四行止损策略好像有问题?红框处。但总体还可以

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:1121.png
图片点击可在新窗口打开查看


查看使用道具详细信息
悬赏金币帖,要悬赏 0 个金币
 回到顶部
帅哥哟,离线,有人找我吗?
yh_tl
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:134 威望:0 精华:0 注册:2012/5/8 8:46:41
  发帖心情 Post By:2012/11/20 11:57:44 [显示全部帖子]

源码,我用的K线走完模式:

INPUT:M(26,5,500,30);
INPUT:M(2,0.1,10,1);
INPUT:M(0.2,0.2,10,0.2);

MID :  MA(CLOSE,M);
UPPER: MID + N*STD(CLOSE,M);
LOWER: MID - N*STD(CLOSE,M);

多:=ALL(C>O+15*X,2) AND ALL(O>MID,2);
空:=ALL(C<O-15*X,2) AND ALL(O<MID,2);


if 多 then begin
 sellshort(holding<0, 0, thisclose);
 buy(holding=0 , 1, thisclose);
 end

HH:=HHV(H,BARSLAST(HOLDING<=0));
多止损1:HH<Enterprice+60*X AND C<=HH-60*X ,LINETHICK0;
多止损2:Enterprice*1.02>=HH AND HH>=Enterprice+60*X AND C<Enterprice+2*X ,LINETHICK0;
多止损3:HH>Enterprice*1.02 AND C<HH*0.98 ,LINETHICK0;
多止损4:TIME>144000 AND C<Enterprice*1.03 ,LINETHICK0;

if 多止损1 OR 多止损2 OR 多止损3 OR 多止损4 then sell(holding>0, 0, thisclose);


if 空 then begin
 sell(holding>0, 0, thisclose);
 buyshort(holding=0 , 1, thisclose);
 end

LL:=LLV(L,BARSLAST(HOLDING>=0));
空止损1:LL>Enterprice-60*X AND C>=LL+60*X ,LINETHICK0;
空止损2:Enterprice<=LL*1.02 AND LL<=Enterprice-60*X AND C>Enterprice-2*X ,LINETHICK0;
空止损3:LL*1.02<Enterprice AND C*0.98>LL ,LINETHICK0;
空止损4:TIME>144000 AND C*1.03>Enterprice ,LINETHICK0;

if 空止损1 OR 空止损2 OR 空止损3 OR 空止损4 then sellshort(holding<0, 0, thisclose);


获得0个金币
 回到顶部
帅哥哟,离线,有人找我吗?
yh_tl
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:134 威望:0 精华:0 注册:2012/5/8 8:46:41
  发帖心情 Post By:2012/11/20 12:41:45 [显示全部帖子]

上面参数错了,更正

INPUT:M(26,5,500,30);
INPUT:N(2,0.1,10,1);
INPUT:X(0.2,0.2,10,0.2);

MID :  MA(CLOSE,M);
UPPER: MID + N*STD(CLOSE,M);
LOWER: MID - N*STD(CLOSE,M);

多:=ALL(C>O+15*X,2) AND ALL(O>MID,2);
空:=ALL(C<O-15*X,2) AND ALL(O<MID,2);


if 多 then begin
 sellshort(holding<0, 0, thisclose);
 buy(holding=0 {AND TIME<144000}, 1, thisclose);
 end

HH:=HHV(H,BARSLAST(HOLDING<=0));
多止损1:HH<Enterprice+60*X AND C<=HH-60*X ,LINETHICK0;
多止损2:Enterprice*1.02>=HH AND HH>=Enterprice+60*X AND C<Enterprice+2*X ,LINETHICK0;
多止损3:HH>Enterprice*1.02 AND C<HH*0.98 ,LINETHICK0;
多止损4:TIME>144000 AND C<Enterprice*1.03 ,LINETHICK0;

if 多止损1 OR 多止损2 OR 多止损3 OR 多止损4 then sell(holding>0, 0, thisclose);


if 空 then begin
 sell(holding>0, 0, thisclose);
 buyshort(holding=0 {AND TIME<144000}, 1, thisclose);
 end

LL:=LLV(L,BARSLAST(HOLDING>=0));
空止损1:LL>Enterprice-60*X AND C>=LL+60*X ,LINETHICK0;
空止损2:Enterprice<=LL*1.02 AND LL<=Enterprice-60*X AND C>Enterprice-2*X ,LINETHICK0;
空止损3:LL*1.02<Enterprice AND C*0.98>LL ,LINETHICK0;
空止损4:TIME>144000 AND C*1.03>Enterprice ,LINETHICK0;

if 空止损1 OR 空止损2 OR 空止损3 OR 空止损4 then sellshort(holding<0, 0, thisclose);

 


获得0个金币
 回到顶部
帅哥哟,离线,有人找我吗?
yh_tl
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:134 威望:0 精华:0 注册:2012/5/8 8:46:41
  发帖心情 Post By:2012/11/20 14:52:27 [显示全部帖子]

你测试的是日线周期啊,要选择15分钟周期


获得0个金币
 回到顶部
帅哥哟,离线,有人找我吗?
yh_tl
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:134 威望:0 精华:0 注册:2012/5/8 8:46:41
  发帖心情 Post By:2012/11/20 21:02:28 [显示全部帖子]

看来你测试的设置都不对?

给你发个理想的一位朋友的帖子,你去看看吧,不转了,怕有版权:)

http://www.55188.com/viewthread.php?tid=4696043&highlight=%B3%CC%D0%F2%BB%AF

 

特别注意交易费率页面和市场模型页面的设置,你肯定至少这两个地方设置不对


获得2个金币
 回到顶部
帅哥哟,离线,有人找我吗?
yh_tl
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:134 威望:0 精华:0 注册:2012/5/8 8:46:41
  发帖心情 Post By:2012/11/24 11:23:23 [显示全部帖子]

你的思路并不适合指定价交易,而且指定价交易稍不注意就会引入未来;建议你可以考虑调整下思路,看能不能使用5分钟或更短的周期?

 

下面是固定轮询模式,指定价交易的代码,供参考:

 

INPUT:M(26,5,500,30);
INPUT:N(2,0.1,10,1);
INPUT:X(0.2,0.2,10,0.2);

MID :  MA(CLOSE,M);
UPPER: MID + N*STD(CLOSE,M);
LOWER: MID - N*STD(CLOSE,M);

多:=H>O+15*X AND REF(C,1)>REF(O,1)+15*X AND ALL(O>MID,2);
空:=L<O-15*X AND REF(C,1)<REF(O,1)-15*X AND ALL(O<MID,2);


if 多 then begin
 sellshort(holding<0, 0, LIMITR,O+16*X);
 buy(holding=0 {AND TIME<144000}, 1, LIMITR,O+16*X);
 end

HH:=HHV(H,BARSLAST(HOLDING<=0));
多止损1:HH<Enterprice+60*X AND L<=HH-60*X ,LINETHICK0;
多止损2:Enterprice*1.02>=HH AND HH>=Enterprice+60*X AND L<Enterprice+2*X ,LINETHICK0;
多止损3:HH>Enterprice*1.02 AND L<HH*0.98 ,LINETHICK0;
多止损4:TIME>144000 AND L<Enterprice*1.03 ,LINETHICK0;

{下面的止损需要生效的话,建议一条一条的去掉前面”//“,仔细看看止损后的效果,想想有无需要完善的地方}
//if 多止损1 then sell(holding>0, 0, LIMITR,HH-61*X);
//if 多止损2 then sell(holding>0, 0, LIMITR,Enterprice+X);
//if 多止损3 then sell(holding>0, 0, LIMITR,HH*0.98-X);
//if 多止损4 then sell(holding>0, 0, LIMITR,MARKET);


if 空 then begin
 sell(holding>0, 0, LIMITR,O-16*X);
 buyshort(holding=0 {AND TIME<144000}, 1, LIMITR,O-16*X);
 end

LL:=LLV(L,BARSLAST(HOLDING>=0));
空止损1:LL>Enterprice-60*X AND H>=LL+60*X ,LINETHICK0;
空止损2:Enterprice<=LL*1.02 AND LL<=Enterprice-60*X AND H>Enterprice-2*X ,LINETHICK0;
空止损3:LL*1.02<Enterprice AND H*0.98>LL ,LINETHICK0;
空止损4:TIME>144000 AND H*1.03>Enterprice ,LINETHICK0;

//if 空止损1 then sellshort(holding<0, 0, LIMITR,LL+61*X);
//if 空止损2 then sellshort(holding<0, 0, LIMITR,Enterprice-X);
//if 空止损3 then sellshort(holding<0, 0, LIMITR,H*0.98+X);
//if 空止损4 then sellshort(holding<0, 0, LIMITR,MARKET);

 

 


获得0个金币
 回到顶部
帅哥哟,离线,有人找我吗?
yh_tl
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:134 威望:0 精华:0 注册:2012/5/8 8:46:41
  发帖心情 Post By:2012/11/24 11:44:49 [显示全部帖子]

倒数第2行需要更正:

//if 空止损3 then sellshort(holding<0, 0, LIMITR,LL*1.02+X);


获得0个金币
 回到顶部
帅哥哟,离线,有人找我吗?
yh_tl
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:134 威望:0 精华:0 注册:2012/5/8 8:46:41
  发帖心情 Post By:2012/11/25 13:25:09 [显示全部帖子]

以下是引用RogarZ在2012-11-25 0:09:37的发言:

wahoo...~

RogarZ 客服,也发水帖?

你要帮助我们学习怎么用金字塔啊,

 

本人对指令价交易一直没兴趣,也不想花时间去研究,我上面肯定有错误啊,有错误你要帮我们指正啊!

 

[此贴子已经被作者于2012-11-25 13:25:27编辑过]

获得0个金币
 回到顶部