金字塔决策交易系统

用户名  找回密码
 

微信登录

微信扫一扫,快速登录

帖子
查看: 1640|回复: 5

【经验分享】顾比倒数线专帖

[复制链接]

25

主题

271

帖子

356

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-18
曾用名:
发表于 2025-2-7 16:26 | 显示全部楼层 |阅读模式
本贴主要介绍顾比倒数线,以及顾比倒数线,作为移动止损止盈的应用。

目录如下:
1. 顾比倒数线原理---2楼
2. 顾比移动止损(多头)---3楼
3. 顾比移动止损(空头)---4楼
4. 顾比倒数线移动止损止盈---5楼
5. 基于SAR指标的止损---6楼
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

举报

25

主题

271

帖子

356

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-18
曾用名:
 楼主| 发表于 2025-2-7 16:30 | 显示全部楼层
顾比倒数线一般用于止损,和均线等指标配合,也可用于止盈。
截图202502071644261856.png
//转自旧论坛版主阿火,感谢阿火。
顾比倒数线,以下跌趋势为例,如何寻找顾比倒数线:
      首先找到下跌趋势线的最低点(标注为1的那条蜡烛线),这是第一只“重要的蜡烛线”。
      然后沿着这条蜡烛线向左移动,直到遇见另一只“最高价高于蜡烛线1”的蜡烛线,这就是我们要找的第二只“重要的蜡烛线”。
      再沿着这只蜡烛线向左移动,直到遇见下一只“最高价的蜡烛线”,这就是第三只“重要的蜡烛线”。此时,沿着第三只蜡烛线的顶端画一条直线,这就是“顾比倒数线”;
     上升曲线同理!

以前看过一个文华版本的顾比倒数线,用了很大篇幅的代码。
金字塔只要10行。以下代码把每根K线图的“第三只重要蜡烛线”的高点、低点全部计算出来了
[PEL] 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{
指标说明:判断趋势转折的可靠指标。
指标用途:
                1、下跌趋势转为新的上升趋势时,作为确认信号;
                2、交易发生后,作为止损信号;
                3、在上升趋势即将转化为新的下跌趋势时,作为获取最佳利润的止盈信号。
}
DISTL:=NEWLBARS(L,1);          //当根K线最低价,创多少日新低
DISTH:=NEWHBARS(H,1);          //当根K线最高价,创多少日新高
HI20:=REF(HHV(H,20),1);        //前20日最低价
LO20:=REF(LLV(L,20),1);        //前20日最高价
 
//顾比倒数线低点连线
GBD1:=REF(L,DISTL);             //第一只重要蜡烛线的低点
GBD2:=REF(GBD1,DISTL);          //第二只重要蜡烛线的低点
//若无第三只蜡烛线(比如第二只已经是历史最低点),用20日低点代替
GBD:IF(GBD2>0,MAX(LLV(L,20),GBD2),LLV(L,20));   //第三只重要蜡烛线的低点
 
//顾比倒数线高点连线
GBG1:=REF(H,DISTH);             //第一只重要蜡烛线的高点
GBG2:=REF(GBG1,DISTH);          //第二只重要蜡烛线的高点
//若无第三只蜡烛线(比如第二只已经是历史最高点),用20日高点代替
GBG:IF(GBG2>0,MIN(HHV(H,20),GBG2),HHV(H,20));   //第三只重要蜡烛线的高点
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

举报

25

主题

271

帖子

356

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-18
曾用名:
 楼主| 发表于 2025-2-7 16:33 | 显示全部楼层
顾比倒数线移动止损示例(多头) 多头.png
[PEL] 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
{
策略说明:基于顾比倒数线的浮动止损系统-多头
系统要素:
                1、最近3周期,SAR向上突破K线,并且MACD在0线附近金叉,开多单。
                2、用顾比倒数线构建移动止损线。当最高价创新高,同时顾比低点创新高,上移止损线,重新定位止损离场位,实现浮动止损。
                3、上根K线最高价下破顾比倒数移动止损线后离场,平多单。
入场条件:
                1、最近3周期,有SAR向上突破K线,并且MACD在0线附近金叉,开多单
出场条件:
                1、上根K线最高价下破顾比倒数移动止损线后离场,平多单。
}
INPUT:P(26,20,40,2),S(12,5,30,3),M(9,2,20,2);  // MACD参数
INPUT:手数(1,1,10000,10);  //开仓手数参数
VARIABLE:ZS=C;      //ZS开仓后顾比低点的较高点连线
VARIABLE:MAXHL=C;   //MAXHL开多仓后最高价
 
//顾比倒数线,一般用于止损止盈,和均线等指标配合
DISTL:=NEWLBARS(L,1);
DISTH:=NEWHBARS(H,1);
HI20:=REF(HHV(H,20),1);
LO20:=REF(LLV(L,20),1);
GBD1:=REF(L,DISTL);
GBD2:=REF(GBD1,DISTL);
GBD:=IF(GBD2>0,MAX(LLV(L,20),GBD2),LLV(L,20));    //顾比低点连线
GBG1:=REF(H,DISTH);
GBG2:=REF(GBG1,DISTH);
GBG:=IF(GBG2>0,MIN(HHV(H,20),GBG2),HHV(H,20));    //顾比高点连线
 
SAR1:SAR(10,2,20),CIRCLEDOT;//SAR指标
//MACD指标
//DIFF线:收盘价短期、长期指数平滑移动平均线间的差
//DEA线:DIFF线的M日指数平滑移动平均线
//MACD线:DIFF线与DEA线的差
DIFF :=EMA(CLOSE,S) - EMA(CLOSE,P);
DEA  :=EMA(DIFF,M);
MACD :=2*(DIFF-DEA);
 
//交易条件
//最近3周期,SAR向上突破K线,并且MACD在0线附近金叉,开多单
COND1:=ANY(REF(SAR1>HIGH,1) AND SAR1<HIGH,3)=1; //最近3周期,有SAR向上突破K线
COND2:=ANY(CROSS(DIFF,DEA),3)=1 AND DIFF<5;     //最近3周期,MACD在0线附近金叉
开多条件:=COND1 AND COND2;//开多条件
 
平多条件:= REF(HIGH,1)<ZS ;       //上根K线最高价下破移动止损线后离场
多损上移条件:=HIGH>MAXHL AND GBD>ZS;  //多损上移条件
 
//开多:最近3周期,SAR向上突破K线,MACD在0线附近金叉
IF 开多条件 AND HOLDING=0 THEN BEGIN
    BUY(1,手数,MARKET);  //开多仓
    ZS:=GBD;      //调用开多仓时顾比倒数低点连线的值,做为多单止损初始值
    MAXHL:= HIGH; //记录开多仓时的最高价
END
//用顾比倒数低点连线构建多头移动止损线。当最高价创新高,同时顾比低点创新高,上移止损线,重新定位止损离场位,实现多头浮动止损。
IF 多损上移条件 AND HOLDING>0 THEN BEGIN
    ZS:=GBD;     //创新高后,止损价赋值为当时的GBD,重新定位止损离场位,实现浮动止损
    MAXHL:=HIGH; //创新高后,记录当时的最高价
END
 
//止损止盈模块
//多头止盈止损平仓:上根K线最高价下破止损线,平多仓离场
IF 平多条件 AND HOLDING>0 AND ENTERBARS>1 THEN SELL(1,HOLDING,MARKET);    //平多:下破止损线,平多仓离场
止损线:ZS;


金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

举报

25

主题

271

帖子

356

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-18
曾用名:
 楼主| 发表于 2025-2-7 16:35 | 显示全部楼层
顾比倒数线移动止损示例(空头)
[PEL] 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
{
策略说明:基于顾比倒数线的浮动止损系统-空头
系统要素:
        1、最近3周期,SAR向下跌破K线,并且MACD死叉,开空单。
        2、用顾比倒数线构建移动止损线。当最低价创新低,同时顾比高点创新低,下移止损线,重新定位止损离场位,实现浮动止损。
        3、上根最低价上穿顾比倒数移动止损线后离场,平空单。
入场条件:
        1、最近3周期,有SAR向上突破K线,并且MACD死叉,开空单
出场条件:
        1、上根最低价上穿顾比倒数移动止损线后离场,平空单。
}
INPUT:P(26,20,40,2),S(12,5,30,3),M(9,2,20,2);  // MACD参数
INPUT:手数(1,1,10000,10);  //开仓手数参数
VARIABLE:ZS=C;      //ZS开仓后顾比高点的较低点连线
VARIABLE:MINLOW=C//MINLOW开空仓后最低价
 
//顾比倒数线,一般用于止损,和均线等指标配合
DISTL:=NEWLBARS(L,1);
DISTH:=NEWHBARS(H,1);
HI20:=REF(HHV(H,20),1);
LO20:=REF(LLV(L,20),1);
GBD1:=REF(L,DISTL);
GBD2:=REF(GBD1,DISTL);
GBD:=IF(GBD2>0,MAX(LLV(L,20),GBD2),LLV(L,20));    //顾比低点连线
GBG1:=REF(H,DISTH);
GBG2:=REF(GBG1,DISTH);
GBG:=IF(GBG2>0,MIN(HHV(H,20),GBG2),HHV(H,20));    //顾比高点连线
 
SAR1:=SAR(10,2,20),CIRCLEDOT;//SAR指标
//MACD指标
//DIFF线:收盘价短期、长期指数平滑移动平均线间的差
//DEA线:DIFF线的M日指数平滑移动平均线
//MACD线:DIFF线与DEA线的差
DIFF :=EMA(CLOSE,S) - EMA(CLOSE,P);
DEA  :=EMA(DIFF,M);
MACD :=2*(DIFF-DEA);
 
//交易条件
//最近3周期,SAR向下跌破K线,并且MACD死叉,开空单
CONK1:=ANY(REF(SAR1<LOW,1) AND SAR1>LOW,3)=1; //最近3周期,有SAR向下突破K线
CONK2:=ANY(CROSS(DEA,DIFF),3)=1; //最近3周期,MACD金叉
开空条件:=CONK1 AND CONK2;//开空条件
 
平空条件:= REF(LOW,1)>ZS ;    //上根最低价上穿移动止损线后离场
空损下移条件:=LOW<MINLOW AND GBG<ZS;  //空损下移条件
 
//开空:最近3周期,SAR向下跌破K线,并且MACD死叉,开空单。
IF 开空条件 AND HOLDING=0 THEN BEGIN
    BUYSHORT(1,1,MARKET);//开空仓
    ZS:=GBG;        //调用开空仓时顾比倒数高点连线的值,做为空单止损初始值
    MINLOW:=LOW;    //记录开空仓时的最低价
END
//用顾比倒数高点连线构建空头移动止损线。当最低价创新低,同时顾比高点创新低后,下移止损线,重新定位止损离场位,实现空头浮动止损
IF 空损下移条件 AND HOLDING<0 THEN BEGIN
    ZS:=GBG;     //创新低后,止损价赋值为当时的GBG,重新定位止损离场位,实现浮动止损
    MINLOW:=LOW; //创新低后,记录当时的最低价
END
 
//止损止盈模块
//空头止盈止损平仓:上根最低价上穿移动止损线,平空仓离场
IF 平空条件 AND HOLDING<0 AND enterbars>1 THEN  SELLSHORT(1,HOLDING,MARKET);      //平空:上穿移动止损线,平空仓离场
止损线:ZS;
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

举报

25

主题

271

帖子

356

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-18
曾用名:
 楼主| 发表于 2025-2-7 16:37 | 显示全部楼层
顾比倒数线移动止损止盈(多头+空头)
[PEL] 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
{
策略说明:基于顾比倒数线的浮动止损止盈系统
系统要素:
        1、最近3周期,SAR向上突破K线,并且MACD在0线附近金叉,开多单。
           最近3周期,SAR向下跌破K线,并且MACD死叉,开空单。
        2、用顾比倒数线构建移动止损线。当最高价创新高,同时顾比低点创新高,上移止损线,重新定位止损离场位,实现浮动止损。
           用顾比倒数线构建移动止损线。当最低价创新低,同时顾比高点创新低,下移止损线,重新定位止损离场位,实现浮动止损。
        3、上根K线最高价下破顾比倒数移动止损线后离场,平多单。
入场条件:
        1、最近3周期,有SAR向上突破K线,并且MACD在0线附近金叉,开多单
        2、最近3周期,有SAR向上突破K线,并且MACD死叉,开空单
出场条件:
        1、上根K线最高价下破顾比倒数移动止损线后离场,平多单。
        2、上根最低价上穿顾比倒数移动止损线后离场,平空单。
}
INPUT:P(26,20,40,2),S(12,5,30,3),M(9,2,20,2);  // MACD参数
INPUT:手数(1,1,10000,10);  //开仓手数参数
VARIABLE:ZS=C;      //ZS开仓后顾比低点的较高点连线
VARIABLE:MAXHL=C;   //MAXHL开多仓后最高价
VARIABLE:MINLOW=C//MINLOW开空仓后最低价
 
//顾比倒数线,一般用于止损,和均线等指标配合
DISTL:=NEWLBARS(L,1);
DISTH:=NEWHBARS(H,1);
HI20:=REF(HHV(H,20),1);
LO20:=REF(LLV(L,20),1);
GBD1:=REF(L,DISTL);
GBD2:=REF(GBD1,DISTL);
GBD:=IF(GBD2>0,MAX(LLV(L,20),GBD2),LLV(L,20));    //顾比低点连线
GBG1:=REF(H,DISTH);
GBG2:=REF(GBG1,DISTH);
GBG:=IF(GBG2>0,MIN(HHV(H,20),GBG2),HHV(H,20));    //顾比高点连线
 
SAR1:=SAR(10,2,20),CIRCLEDOT;//SAR指标
//MACD指标
//DIFF线:收盘价短期、长期指数平滑移动平均线间的差
//DEA线:DIFF线的M日指数平滑移动平均线
//MACD线:DIFF线与DEA线的差
DIFF :=EMA(CLOSE,S) - EMA(CLOSE,P);
DEA  :=EMA(DIFF,M);
MACD :=2*(DIFF-DEA);
 
//交易条件
//最近3周期,SAR向上突破K线,并且MACD在0线附近金叉,开多单
COND1:=ANY(REF(SAR1>HIGH,1) AND SAR1<HIGH,3)=1; //最近3周期,有SAR向上突破K线
COND2:=ANY(CROSS(DIFF,DEA),3)=1 AND DIFF<5;     //最近3周期,MACD在0线附近金叉
开多条件:=COND1 AND COND2;//开多条件:最近3周期,SAR向上突破K线,并且MACD在0线附近金叉,开多单
 
//最近3周期,SAR向下跌破K线,并且MACD死叉,开空单
CONK1:=ANY(REF(SAR1<LOW,1) AND SAR1>LOW,3)=1; //最近3周期,有SAR向下突破K线
CONK2:=ANY(CROSS(DEA,DIFF),3)=1; //最近3周期,MACD金叉
开空条件:=CONK1 AND CONK2;//开空条件:最近3周期,有SAR向上突破K线,并且MACD死叉,开空单
 
多损上移条件:=HIGH>MAXHL AND GBD>ZS;  //多损上移条件:当最高价创新高,同时顾比低点创新高,上移止损线
空损下移条件:=LOW<MINLOW AND GBG<ZS;  //空损下移条件:当最低价创新低,同时顾比高点创新低,下移止损线
 
平多条件:= REF(HIGH,1)<ZS ;       //上根K线最高价下破移动止损线后离场
平空条件:= REF(LOW,1)>ZS ;        //上根K线最低价上穿移动止损线后离场
 
//开多:最近3周期,SAR向上突破K线,MACD在0线附近金叉
IF 开多条件 AND HOLDING=0 THEN BEGIN
    BUY(1,手数,MARKET); //开多仓
    ZS:=GBD;      //调用开多仓时顾比倒数低点连线的值,做为多单止损初始值
    MAXHL:= HIGH; //记录开多仓时的最高价
END
//用顾比倒数低点连线构建多头移动止损线。当最高价创新高,同时顾比低点创新高,上移止损线,重新定位止损离场位,实现多头浮动止损。
IF 多损上移条件 AND HOLDING>0 THEN BEGIN
    ZS:=GBD;     //创新高后,止损价赋值为当时的GBD,重新定位止损离场位,实现浮动止损
    MAXHL:=HIGH; //创新高后,记录当时的最高价
END
 
//开空:最近3周期,SAR向下跌破K线,并且MACD死叉,开空单。
IF 开空条件 AND HOLDING=0 THEN BEGIN
    BUYSHORT(1,1,MARKET);//开空仓
    ZS:=GBG;        //调用开空仓时顾比倒数高点连线的值,做为空单止损初始值
    MINLOW:=LOW;    //记录开空仓时的最低价
END
//用顾比倒数高点连线构建空头移动止损线。当最低价创新低,同时顾比高点创新低后,下移止损线,重新定位止损离场位,实现空头浮动止损
IF 空损下移条件 AND HOLDING<0 THEN BEGIN
    ZS:=GBG;     //创新低后,止损价赋值为当时的GBG,重新定位止损离场位,实现浮动止损
    MINLOW:=LOW; //创新低后,记录当时的最低价
END
 
//止损止盈模块
//多头止盈止损平仓:上根K线最高价下破止损线,平多仓离场
IF 平多条件 AND HOLDING>0 AND ENTERBARS>1 THEN SELL(1,HOLDING,MARKET);    //平多:下破止损线,平多仓离场
//空头止盈止损平仓:上根K线最低价上穿移动止损线,平空仓离场
IF 平空条件 AND HOLDING<0 AND enterbars>1 THEN  SELLSHORT(1,HOLDING,MARKET); //平空:上穿移动止损线,平空仓离场
止损线:ZS;

金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

举报

25

主题

271

帖子

356

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-18
曾用名:
 楼主| 发表于 2025-2-7 16:56 | 显示全部楼层
从3楼到5楼,开仓条件里,都用到了SAR指标,
其实,SAR指标,也可以做成止损,用于策略中。

需求:请帮写一个基于SAR指标的止损模块,出现第二个红点“空单止损”,出现第二个绿点“多单止损”
截图202502071655391012.png
[PEL] 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
SAR0:=SAR(10,2,20),CIRCLEDOT;
SAR1:=ref(SAR0,1);
SAR2:=ref(SAR0,2);
  
KS:=SAR0>SAR1 and SAR1<SAR2;//SAR为最低值,即出现第二个红点,KS为1,平空单止损
DS:=SAR0<SAR1 and SAR1>SAR2;//SAR为最高值,即出现第二个绿点, DS为1,平多单止损
 
//止损模块
//多头止损平仓:SAR为最高值,即出现第二个绿点, DS为1,平多单止损离场
IF DS AND HOLDING>0 AND ENTERBARS>1 THEN SELL(1,HOLDING,MARKET);  
//空头止损平仓:SAR为最低值,即出现第二个红点,KS为1,平空单止损离场
IF KS AND HOLDING<0 AND enterbars>1 THEN  SELLSHORT(1,HOLDING,MARKET);
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

举报

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

本版积分规则

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

GMT+8, 2025-8-18 12:20 , Processed in 0.106452 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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