金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 3341|回复: 16

指标改写问题请教

[复制链接]

144

主题

410

帖子

410

积分

Rank: 4

等级: 专业版

注册:
2021-8-3
曾用名:
发表于 2022-7-19 08:56 | 显示全部楼层 |阅读模式
恒温器策略,将下列条件改写,为什么测试结果与原来恒温器策略一样,是不是下面这四句改写代码有问题?


趋势开多条件:=CROSS(MA1,MA2);
趋势开空条件:=CROSS(MA2,MA1);
趋势平多条件:=CROSS(MA2,MA1);
趋势平空条件:=CROSS(MA1,MA2);

回复

使用道具 举报

144

主题

410

帖子

410

积分

Rank: 4

等级: 专业版

注册:
2021-8-3
曾用名:
 楼主| 发表于 2022-7-19 08:57 | 显示全部楼层
原代码内容:
趋势开多条件:=C>UPPER;
趋势开空条件:=C<LOWER;
趋势平多条件:=C<MID;
趋势平空条件:=C>MID;
回复

使用道具 举报

3

主题

2万

帖子

2万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2022-7-19 09:07 | 显示全部楼层
因为c 大于upper其实和就是金叉顺延下去的状态,如果加了仓位控制那么有时候效果和金叉就是一样的

金叉时某个点,大于是一个时间段,如果由holding=0仓位控制就是在时间段上截取了第一个开始的点,也就变成了点
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

144

主题

410

帖子

410

积分

Rank: 4

等级: 专业版

注册:
2021-8-3
曾用名:
 楼主| 发表于 2022-7-19 09:14 | 显示全部楼层
原策略是布林线,改写的是双均线,条件和开平仓时间都不应该一样的呀?
恒温器策略原文有点长,我没贴上去
回复

使用道具 举报

3

主题

2万

帖子

2万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2022-7-19 09:18 | 显示全部楼层
电话下我把
021-20339087
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

144

主题

410

帖子

410

积分

Rank: 4

等级: 专业版

注册:
2021-8-3
曾用名:
 楼主| 发表于 2022-7-19 17:11 | 显示全部楼层
//该模型为简单示范模型,用户需根据自己交易经验,修改完善后再实际应用!!!

//策略:恒温器系统
//简介:恒温器策略以其能够在震荡和趋势市场中自动调节交易行为而得名。
//类型:中长期通道突破
//周期:
//使用市场:
//详情介绍网址:http://www.weistock.com/bbs/disp ... Id=30423&page=2
//版本:1.0
//修订时间:2012.11.6
//DESIGNED BY ROGARZ


//中间变量
INPUT:M(50,5,300,30),N(1.25,0.1,10,0.1),SS(500000,500000,500000,1),K1(0.5,0.1,1,0.1),K2(0.75,0.1,1,0.1);
VARIABLE:A:=0;//0表示仓位是在趋势模式下下单  1表示在震荡模式下下单
MID :  MA(CLOSE,M);//布林中轨
UPPER:MID + N*STD(CLOSE,M);//布林上轨
LOWER:MID - N*STD(CLOSE,M);//布林下轨
今开:=CALLSTOCK(STKLABEL,VTOPEN,6,0);
CMI:=ABS(CLOSE-REF(CLOSE,29))/(HHV(HIGH,30)-LLV(L,30))*100;//0-100 取值越大,说明趋势越强,CMI<20震荡模式,反之为趋势
关键价:(HIGH+LOW+CLOSE)/3;//关键价的计算,国外常称作中枢价格(PIVOT POINT)
ATR10:=MA(TR,10);
3日均低价:=MA(L,3);
3日均高价:=MA(H,3);
手数:=SS;

MA1:=MA(CLOSE,5);//源程序无
MA2:=MA(CLOSE,20);//源程序无
MA3:=MA(CLOSE,60);//源程序无

//趋势开多平空条件:=CROSS(MA1,MA2)  ;//开多平空条件
//趋势开空平多条件:=CROSS(MA2,MA1) ;//开空平多条件


//交易条件
IF C<关键价 THEN BEGIN
趋买市开多平空条件:=C>MAX(今开+K1*ATR10,3日均低价);
趋买市开空平多条件:=C<MIN(今开-K2*ATR10,3日均高价);
END
   
IF C>关键价 THEN BEGIN
趋卖市开多平空条件:=C>MAX(今开+K2*ATR10,3日均低价);
趋卖市开空平多条件:=C<MIN(今开-K1*ATR10,3日均高价);
END
趋势开多条件:=CROSS(MA1,MA2);
趋势开空条件:=CROSS(MA2,MA1);
趋势平多条件:=CROSS(MA2,MA1);
趋势平空条件:=CROSS(MA1,MA2);

//恒温器源程序为以下四句是布林上下轨
//趋势开多条件:=C>UPPER;
//趋势开空条件:=C<LOWER;
//趋势平多条件:=C<MID;
//趋势平空条件:=C>MID;
震荡多单平仓条件:=C<=ENTERPRICE-3*ATR10;
震荡空单平仓条件:=C>=ENTERPRICE+3*ATR10;

//交易系统
IF CMI<20 THEN BEGIN {震荡模式}
   IF C<关键价 THEN BEGIN
   趋买市平空:SELLSHORT(趋买市开多平空条件 AND HOLDING<=0,手数,MARKET);
   趋买市平多:SELL(趋买市开空平多条件 AND HOLDING>=0,手数,MARKET);
   趋买市开多:BUY(趋买市开多平空条件 AND HOLDING<=0,手数,MARKET);
   趋买市开空:BUYSHORT(趋买市开空平多条件 AND HOLDING>=0,手数,MARKET);
   A:=1;
   END
   IF C>关键价 THEN BEGIN
   趋卖市平空:SELLSHORT(趋卖市开多平空条件 AND HOLDING<=0,手数,MARKET);
   趋卖市平多:SELL(趋卖市开空平多条件 AND HOLDING>=0,手数,MARKET);
   趋卖市开多:BUY(趋卖市开多平空条件 AND HOLDING<=0,手数,MARKET);
   趋卖市开空:BUYSHORT(趋卖市开空平多条件 AND HOLDING>=0,手数,MARKET);
   A:=1;
   END
END
IF CMI>=20 THEN BEGIN {趋势模式}
IF A:=1 THEN BEGIN //趋势模式下 原震荡模式下 仓位处理
    震荡多单平仓:SELL(震荡多单平仓条件 AND HOLDING>0,手数,MARKET);
    震荡空单平仓:SELLSHORT(震荡空单平仓条件 AND HOLDING<0,手数,MARKET);
    A:=0;
    END
   
    IF A:=0 THEN BEGIN
趋势平空:SELLSHORT(趋势平空条件 AND HOLDING<0,手数,MARKET);
趋势平多:SELL(趋势平多条件 AND HOLDING>0,手数,MARKET);
趋势开多:BUY(趋势开多条件 AND HOLDING<=0,手数,MARKET);
趋势开空:BUYSHORT(趋势开空条件 AND HOLDING>=0,手数,MARKET);
A:=0;
END
END
//注意先平后开原则
回复

使用道具 举报

144

主题

410

帖子

410

积分

Rank: 4

等级: 专业版

注册:
2021-8-3
曾用名:
 楼主| 发表于 2022-7-19 17:13 | 显示全部楼层
修改过的恒温器源码发给您,烦请老师帮我测试下,为什么和系统提供的恒温器回测效果一样。
回复

使用道具 举报

144

主题

410

帖子

410

积分

Rank: 4

等级: 专业版

注册:
2021-8-3
曾用名:
 楼主| 发表于 2022-7-19 17:14 | 显示全部楼层
增加部分:
MA1:=MA(CLOSE,5);//源程序无
MA2:=MA(CLOSE,20);//源程序无
MA3:=MA(CLOSE,60);//源程序无
改动部分:
趋势开多条件:=CROSS(MA1,MA2);
趋势开空条件:=CROSS(MA2,MA1);
趋势平多条件:=CROSS(MA2,MA1);
趋势平空条件:=CROSS(MA1,MA2);
回复

使用道具 举报

3

主题

2万

帖子

2万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2022-7-19 17:35 | 显示全部楼层
你这个修改只是趋势多空不一样,其他条件是一样的
通过图你可以看到很多交易信号是其他条件触发的,加上有仓位控制其他条件买了,趋势多空就没有交易了
你看这个图最后一段趋势多空还是有差别的
截图202207191732274258.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

3

主题

2万

帖子

2万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2022-7-19 17:43 | 显示全部楼层
看代码,有一个全局变量A是用来控制程序运行在震荡还是趋势模式下的
0表示不会用趋势模式了
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2024-11-15 00:40 , Processed in 0.300501 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表