期货交易是一场修行,从最初的懵懂无知到如今的敬畏市场,这十年间我经历了无数次爆仓的绝望与顿悟的欣喜。还记得初入市场时的狂妄自大,以为凭借聪明才智就能轻松战胜市场,结果三个月内两次爆仓给了我当头一棒。后来沉迷于各种技术指标的研究,MACD、RSI、布林带,电脑屏幕贴满了交易笔记,像个疯狂的科学家,可回测完美的策略在实盘中却屡屡失效,这才明白市场不是简单的数学公式。最痛苦的阶段是明明建立了交易系统,却总被贪婪和恐惧左右,记得那个不眠之夜,眼睁睁看着浮盈变成爆仓,那一刻才真正懂得纪律的重要性。现在的我终于明白,交易不是预测的艺术,而是概率的游戏,不再追求每笔交易都盈利,而是专注于构建具有正期望值的交易系统。趋势来时顺势而为,震荡时耐心等待,严格控制每笔交易的风险,让利润自然奔跑。市场就像一面镜子,照出我们内心所有的弱点,而成功的交易者,都是在与自己的博弈中获得了最终的胜利。这一路走来,最大的收获不是账户数字的增长,而是学会了敬畏市场、控制情绪、坚守纪律。期货市场永远都在那里,不慌不忙地惩罚着每一个傲慢的参与者,同时也慷慨地奖励那些真正理解它的人。
注意:本指标源码用于:本指标源码用于文华财经赢顺wh6、睿期wh7、



===================================
部分代码
完整代码 薇*信搜索 公众号 鑫池量化系统2
===================================
//均线参数//☆ ★ △ ▲ ▽ ▼ □ ■ ● ○↑↓ || /**/
均线参考线:=EMA(C,13),NOTEXT;//
均线生命线:=EMA(C,21),NOTEXT;//
//DRAWCOLORLINE(均线生命线>REF(均线生命线,1),均线生命线,COLORRED,COLORGREEN),LINETHICK1;//
//DRAWCOLORLINE(均线参考线>均线生命线,均线生命线,COLORRED,COLORGREEN),LINETHICK1;//
均线多空线:=EMA(C,60);//,NOTEXT
//DRAWCOLORLINE(均线生命线>均线多空线,均线多空线,COLORRED,COLORGREEN),LINETHICK1;//
均线做多区间:=均线参考线>均线生命线;
均线做空区间:=均线参考线<均线生命线;
//随机原始参数
随机RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
随机参考线:=SMA(随机RSV,3,1),NOTEXT;//
随机生命线:=SMA(随机参考线,3,1),NOTEXT;//
//随机定义参数
//M:=3;
随机Q:=PRICEPRECISION;//与品种一致
随机P:=0;//数值与位置的相差额度
随机金叉点:=CROSS (随机参考线,随机生命线);
随机死叉点:=CROSSDOWN(随机参考线,随机生命线);
随机做多区间:=随机参考线>随机生命线;
随机做空区间:=随机参考线<随机生命线;
随机N1:=BARSLAST(随机金叉点)+1;
随机N2:=BARSLAST(随机死叉点)+1;
随机本次低点:=LLV(L,随机N2);//
随机前次低点:=REF(VALUEWHEN(随机金叉点,随机本次低点),1);//
随机本次高点:=HHV(H,随机N1);//
随机前次高点:=REF(VALUEWHEN(随机死叉点,随机本次高点),1);//
随机低点上升:=随机本次低点>随机前次低点;
随机低点下降:=随机本次低点<随机前次低点;
随机高点上升:=随机本次高点>随机前次高点;
随机高点下降:=随机本次高点<随机前次高点;
随机低点相等:=随机本次低点=随机前次低点;
随机高点相等:=随机本次高点=随机前次高点;
/*
//随机指标点
DRAWICON(随机金叉点, L,'ICO10'),VALIGN0;//
DRAWICON(随机死叉点, H,'ICO11'),VALIGN2;//
//随机指标点根据大小分颜色
DRAWICON(随机金叉点&&随机低点上升, L,'ICO10') ,VALIGN0;//
DRAWICON(随机金叉点&&随机低点下降, L,'ICO118'),VALIGN0;//
DRAWICON(随机金叉点&&随机低点相等, L,'ICO12') ,VALIGN0;//
DRAWICON(随机死叉点&&随机高点上升, H,'ICO119'),VALIGN2;//
DRAWICON(随机死叉点&&随机高点下降, H,'ICO11') ,VALIGN2;//
DRAWICON(随机死叉点&&随机高点相等, H,'ICO12') ,VALIGN2;//
*/
//均线做多和随机做多共振//均线做空和随机做空共振
所有B点:=均线做多区间&&随机做多区间&&COUNT(随机做多区间,BARSLASTCOUNT(均线做多区间))=1;//
所有S点:=均线做空区间&&随机做空区间&&COUNT(随机做空区间,BARSLASTCOUNT(均线做空区间))=1;//
间隔B点:=所有B点&&COUNT(所有B点,SUMBARS(所有S点,1))=1;//
间隔S点:=所有S点&&COUNT(所有S点,SUMBARS(所有B点,1))=1;//
//共振做多区间:=BARSLAST(间隔B点)<BARSLAST(间隔S点);//间隔B点到间隔S点//不对
//共振做空区间:=BARSLAST(间隔B点)>BARSLAST(间隔S点);//间隔S点到间隔B点//不对
共振做多区间:=BARSLAST(间隔B点)<BARSLAST(间隔S点)||BARSLAST(间隔B点)>0&&ISNULL(BARSLAST(间隔S点));//间隔B点到间隔S点//航行修正
共振做空区间:=BARSLAST(间隔B点)>BARSLAST(间隔S点)||BARSLAST(间隔S点)>0&&ISNULL(BARSLAST(间隔B点));//间隔S点到间隔B点//航行修正
//均线和随机共振二色
DRAWCOLORKLINE(共振做多区间&&ISDOWN=0,COLORMAGENTA, 1);//粉色区间
DRAWCOLORKLINE(共振做多区间&&ISDOWN=1,COLORMAGENTA, 0);//粉色区间
DRAWCOLORKLINE(共振做空区间&&ISDOWN=0,COLORCYAN, 1);//青色区间
DRAWCOLORKLINE(共振做空区间&&ISDOWN=1,COLORCYAN, 0);//青色区间
//共振定义参数
共振Q:=PRICEPRECISION;//与品种一致
共振P:=0;//数值与位置的相差额度
共振做空区间本次最低点:=REF(L,LLVBARS(L,SUMBARS(间隔S点,1)));//
共振做空区间前次最低点:=REF(VALUEWHEN(间隔B点,共振做空区间本次最低点),1);//
共振做多区间本次最高点:=REF(H,HHVBARS(H,SUMBARS(间隔B点,1)));// REF(HHV(H,SUMBARS(CROSS(共振做多区间,0.5),1)),1)
共振做多区间前次最高点:=REF(VALUEWHEN(间隔S点,共振做多区间本次最高点),1);//
共振低点上升:=共振做空区间本次最低点>共振做空区间前次最低点;
共振低点下降:=共振做空区间本次最低点<共振做空区间前次最低点;
共振高点上升:=共振做多区间本次最高点>共振做多区间前次最高点;
共振高点下降:=共振做多区间本次最高点<共振做多区间前次最高点;
共振低点相等:=共振做空区间本次最低点=共振做空区间前次最低点;
共振高点相等:=共振做多区间本次最高点=共振做多区间前次最高点;
/*
//标注共振做多区间的最高价,位置在最高价K线的上方,数值用红色,小数点与品种相一致
//标注共振做空区间的最低价,位置在最低价K线的下方,数值用绿色,小数点与品种相一致
DRAWSHIFTNUMBER(间隔S点,共振做多区间本次最高点+共振P*MINPRICE,共振做多区间本次最高点,共振Q,COLORRED, 0,HHVBARS(H,SUMBARS(间隔B点,1))),VALIGN2;////标注共振做多区间的最高价
DRAWSHIFTNUMBER(间隔B点,共振做空区间本次最低点-共振P*MINPRICE,共振做空区间本次最低点,共振Q,COLORGREEN,0,LLVBARS(L,SUMBARS(间隔S点,1))),VALIGN0;////标注共振做空区间的最低价
*/
//前后相邻的两个共振做多区间的最高数值相比较,如果后面的数值,大于前面数值用红色,小于前面数值用粉色,等于前面数值用黄色,小数点与品种相一致。
//前两相邻的两个共振做空区间的最低数值相比较,如果后面的数值,大于前面数值用红色,小于前面数值用青色,等于前面数值用白色,小数点与品种相一致。
DRAWSHIFTNUMBER(间隔S点&&共振高点上升,REF(共振做多区间本次最高点,1)+共振P*MINPRICE,REF(共振做多区间本次最高点,1),共振Q,COLORRED, 0,REF(HHVBARS(H,SUMBARS(间隔B点,1)),1)+1),VALIGN2;//茶杯//齐云修正
DRAWSHIFTNUMBER(间隔S点&&共振高点相等,REF(共振做多区间本次最高点,1)+共振P*MINPRICE,REF(共振做多区间本次最高点,1),共振Q,COLORYELLOW, 0,REF(HHVBARS(H,SUMBARS(间隔B点,1)),1)+1),VALIGN2;//茶杯//齐云修正
DRAWSHIFTNUMBER(间隔S点&&共振高点下降,REF(共振做多区间本次最高点,1)+共振P*MINPRICE,REF(共振做多区间本次最高点,1),共振Q,COLORGREEN, 0,REF(HHVBARS(H,SUMBARS(间隔B点,1)),1)+1),VALIGN2;//茶杯//齐云修正
DRAWSHIFTNUMBER(间隔B点&&共振低点上升,REF(共振做空区间本次最低点,1)-共振P*MINPRICE,REF(共振做空区间本次最低点,1),共振Q,COLORRED, 0,REF(LLVBARS(L,SUMBARS(间隔S点,1)),1)+1),VALIGN0;//茶杯//齐云修正
DRAWSHIFTNUMBER(间隔B点&&共振低点相等,REF(共振做空区间本次最低点,1)-共振P*MINPRICE,REF(共振做空区间本次最低点,1),共振Q,COLORWHITE, 0,REF(LLVBARS(L,SUMBARS(间隔S点,1)),1)+1),VALIGN0;//茶杯//齐云修正
DRAWSHIFTNUMBER(间隔B点&&共振低点下降,REF(共振做空区间本次最低点,1)-共振P*MINPRICE,REF(共振做空区间本次最低点,1),共振Q,COLORGREEN, 0,REF(LLVBARS(L,SUMBARS(间隔S点,1)),1)+1),VALIGN0;//茶杯//齐云修正
//前后共振做多区间,后区大于或者等于前区最高价的第一根K线,定义为共振向上突破点。在前区最高价K线和共振向上突破点K线之间连线,高度为前区最高价。
//前后共振做空区间,后区小于或者等于前区最低价的第一根K线,定义为共振向下突破点。在前区是低价K线和共振向下突破点K线之间连线,高度为前区最低价。
//DRAWSL(共振做多区间&&C>=共振做多区间前次最高点&&COUNT(C>=共振做多区间前次最高点,SUMBARS(CROSSUP(共振做多区间,0.5),1)),共振做多区间前次最高点,0,-SUMBARS(CROSSUP(共振做空区间,0.5),1)-REF(HHVBARS(H,SUMBARS(间隔B点,1)),SUMBARS(CROSSUP(共振做空区间,0.5),1)),0,COLORWHITE);
//DRAWSL(共振做空区间&&C<=共振做空区间前次最低点&&COUNT(C<=共振做空区间前次最低点,SUMBARS(CROSSUP(共振做空区间,0.5),1)),共振做空区间前次最低点,0,-SUMBARS(CROSSUP(共振做多区间,0.5),1)-REF(LLVBARS(L,SUMBARS(间隔S点,1)),SUMBARS(CROSSUP(共振做多区间,0.5),1)),0,COLORYELLOW);//楠栀
//以您三楼的第一条思路为例,是先找到共振向上突破点这根K线往左进行画线,画到上一区间的最高点,高度为前区最高价 所以没有画线的终点这个定义,为您修改为画线的长度
共振向上突破点:=共振做多区间&&C>=共振做多区间前次最高点&&COUNT(C>=共振做多区间前次最高点,SUMBARS(CROSSUP(共振做多区间,0.5),1));//楠栀
共振向下突破点:=共振做空区间&&C<=共振做空区间前次最低点&&COUNT(C<=共振做空区间前次最低点,SUMBARS(CROSSUP(共振做空区间,0.5),1));//楠栀
做多连线的起点:=共振向上突破点;//楠栀
做多连线的长度:=SUMBARS(CROSSUP(共振做空区间,0.5),1)+REF(HHVBARS(H,SUMBARS(间隔B点,1)),SUMBARS(CROSSUP(共振做空区间,0.5),1));//楠栀
做多连线的高度:=共振做多区间前次最高点;//楠栀
做空连线的起点:=共振向下突破点;//楠栀
做空连线的长度:=SUMBARS(CROSSUP(共振做多区间,0.5),1)+REF(LLVBARS(L,SUMBARS(间隔S点,1)),SUMBARS(CROSSUP(共振做多区间,0.5),1));//楠栀
做空连线的高度:=共振做空区间前次最低点;//楠栀
//DRAWSL(共振向上突破点,共振做多区间前次最高点,0,-做多连线的长度,0,COLORWHITE);//楠栀
//DRAWSL(共振向下突破点,共振做空区间前次最低点,0,-做空连线的长度,0,COLORYELLOW);//楠栀
//在共振区间的基础上确定拐点
//假定一个共振做多区间,这个共振做多区间前一个共振做多区间的最高价是上升的,同时这个共振做多区间前一个共振做空区间的最低价也是上升时,那么这个假定共振做多区间的第一根K线的下方标注白色“GS”。定义为拐上白点
//假定一个共振做空区间,这个共振做空区间前一个共振做空区间的最低价是下降的,同时这个共振做空区间前一个共振做多区间的最高价也是下降时,那么这个假定共振做空区间的第一根K线的上方标注白色“GX”。定义为拐下白点
拐上白点:=CROSS(共振做多区间,0.5)&&REF(共振低点上升,1)&&REF(共振高点上升,SUMBARS(CROSS(共振低点上升,0.5),1));//茶杯
拐下白点:=CROSS(共振做空区间,0.5)&&REF(共振高点下降,1)&&REF(共振低点下降,SUMBARS(CROSS(共振高点下降,0.5),1));//
//拐上白点:=REF(共振低点上升,BARSLAST(CROSSDOWN(共振做空区间,0.5))+1)&&REF(共振高点上升,BARSLAST(CROSSDOWN(共振做多区间,0.5))+1)&&CROSS(共振做多区间,0.5);//敬源
//拐下白点:=REF(共振低点下降,BARSLAST(CROSSDOWN(共振做空区间,0.5))+1)&&REF(共振高点下降,BARSLAST(CROSSDOWN(共振做多区间,0.5))+1)&&CROSS(共振做空区间,0.5);//
//DRAWTEXT(拐上白点,L,'GS'),VALIGN0,COLORWHITE,FONTSIZE30;//,FONTSIZE23
//DRAWTEXT(拐下白点,H,'GX'),VALIGN2,COLORWHITE,FONTSIZE30;//,FONTSIZE23
//VERTLINE(CROSS(共振做多区间,0.5)&&REF(共振低点上升,1)&&REF(共振高点上升,SUMBARS(CROSS(共振低点上升,0.5),1)),COLORRED );//茶杯画竖线的指标
//VERTLINE(CROSS(共振做空区间,0.5)&&REF(共振高点下降,1)&&REF(共振低点下降,SUMBARS(CROSS(共振高点下降,0.5),1)),COLORGREEN);//茶杯画竖线的指标
//将“GS”和“GX”间隔出现,标注变为黄色。定义为拐上点和拐下点
拐上点:=拐上白点&&COUNT(拐上白点,BARSLAST(拐下白点)+1);
拐下点:=拐下白点&&COUNT(拐下白点,BARSLAST(拐上白点)+1);
//DRAWTEXT(拐上点,L,'GS'),VALIGN0,COLORYELLOW,FONTSIZE17;//,FONTSIZE23
//DRAWTEXT(拐下点,H,'GX'),VALIGN2,COLORYELLOW,FONTSIZE17;//,FONTSIZE23
//在拐上点点画红色的竖线,在拐下点点画绿色的竖线
VERTLINE(拐上点,COLORRED),DOT;
VERTLINE(拐下点,COLORGREEN),DOT;
//在最后一个拐上点画红色的竖线,在黄色最后一个拐下点画绿色的竖线 不可分享
//VERTLINE(拐上点&&BACKSET(ISLASTBAR,SUMBARS(拐上点,1)),COLORRED),DOT;
//VERTLINE(拐下点&&BACKSET(ISLASTBAR,SUMBARS(拐下点,1)),COLORGREEN),DOT;
//最后一根竖线。
//VERTLINE(拐上点&&BACKSET(ISLASTBAR,SUMBARS(拐上点 OR 拐下点,1)),COLORYELLOW),DOT;
//VERTLINE(拐下点&&BACKSET(ISLASTBAR,SUMBARS(拐上点 OR 拐下点,1)),COLORWHITE),DOT;
/*
//假转势情况
//拐上点后面的第一个共振做多区间的数值是绿色数值时,那么在共振做多区间后的共振做空区间的第一根K线,标注黄色“补GX”
//拐下点后面的第一个共振做空区间的数值是红色数值时,那么在共振做空区间后的共振做多区间的第一根K线,标注黄色“补GS”
补GX:=间隔S点&&共振高点下降&&REF(REF(COUNT(共振做多区间,BARSLAST(拐上点)+1)=1,BARSLASTCOUNT(共振做多区间)-1)&&共振做多区间,1)&&CROSS(共振做空区间,0.5);
补GS:=间隔B点&&共振低点上升&&REF(REF(COUNT(共振做空区间,BARSLAST(拐下点)+1)=1,BARSLASTCOUNT(共振做空区间)-1)&&共振做空区间,1)&&CROSS(共振做多区间,0.5);