写一段交易心得
交易心得:在混沌中寻找秩序的艺术
市场如海,时而平静如镜,时而惊涛骇浪。多年的交易生涯让我明白,真正的盈利并非来自预测未来,而是源于对概率的掌控与规则的坚守。
- 规则高于直觉
每一次情绪化的决策都是对账户的慢性自杀。我曾因”感觉会反弹”而逆势加仓,最终被趋势碾压;也曾因恐惧提前平仓,错失大行情。后来,我建立了明确的进出场规则:“20日均线定方向,5日动态过滤控节奏”,让系统代替主观判断,从此交易变得清晰而冷静。 - 亏损是学费,而非失败
那些让我夜不能寐的爆仓经历,最终成了最珍贵的教科书。比如,曾因忽视”假突破过滤”信号,在震荡市中反复止损。后来通过量化回测发现:85%的无效突破都发生在特定量价结构下,这直接催生了现在的动态过滤模块。 - 慢即是快
见过太多人追求”天天盈利”,结果被手续费和滑点吞噬。我选择只做符合三大条件的交易:
- 趋势方向与30日通道一致
- RSI能量未过度透支
- 突破时伴随成交量验证
一年只需抓住5-6次高盈亏比机会,收益远胜频繁操作。


文华财经6全部代码:
//所有显示加入&&到期日=0//☆ ★ △ ▲ ▽ ▼ □ ■ ● ○↑↓ || /**/+共振P*MINPRICE
到期日:=DATE>=280501;
/*
做多年月日:=IF(到期日,NULL,250127);
做空年月日:=IF(到期日,NULL,250206);
VERTLINE(DATE=做多年月日,COLORYELLOW) ,DASHDOTDOT,LINETHICK2;//做多年月日的收盘K线画一根黄色垂直虚线
VERTLINE(DATE=做空年月日,COLORWHITE ) ,DASHDOTDOT,LINETHICK2;//做空年月日的收盘K线画一根白色垂直虚线
做多时分:=IF(到期日,NULL,1445);
做空时分:=IF(到期日,NULL,1445);
VERTLINE(TIME=做多时分 AND DATE=做多年月日,COLORYELLOW),DASHDOTDOT,LINETHICK3;//做多年月日时分的收盘K线画一根黄色垂直虚线
VERTLINE(TIME=做空时分 AND DATE=做空年月日,COLORWHITE ),DASHDOTDOT,LINETHICK3;//做空年月日时分的收盘K线画一根白色垂直虚线
*/
/*
日线压力1:=1470;//
日线压力2:=1470;//
日线压力3:=1470;//
日线支撑1:=958;//
日线支撑2:=958;//
日线支撑3:=958;//
DRAWSL(1,日线压力1,0,1,2,COLORRED);
DRAWSL(1,日线压力2,0,1,2,COLORRED);
DRAWSL(1,日线压力3,0,1,2,COLORRED);
DRAWSL(1,日线支撑1,0,1,2,COLORGREEN);
DRAWSL(1,日线支撑2,0,1,2,COLORGREEN);
DRAWSL(1,日线支撑3,0,1,2,COLORGREEN);
DRAWSL(1,日线压力1,0,100000,0,COLORRED);
DRAWSL(1,日线压力2,0,100000,0,COLORRED);
DRAWSL(1,日线压力3,0,100000,0,COLORRED);
DRAWSL(1,日线支撑1,0,100000,0,COLORGREEN);
DRAWSL(1,日线支撑2,0,100000,0,COLORGREEN);
DRAWSL(1,日线支撑3,0,100000,0,COLORGREEN);
AA:=IF(到期日,0,100000);
DRAWSL(NOT(到期日),日线压力1,0,AA,0,COLORRED);
DRAWSL(NOT(到期日),日线压力2,0,AA,0,COLORRED);
DRAWSL(NOT(到期日),日线压力3,0,AA,0,COLORRED);
DRAWSL(NOT(到期日),日线支撑1,0,AA,0,COLORGREEN);
DRAWSL(NOT(到期日),日线支撑2,0,AA,0,COLORGREEN);
DRAWSL(NOT(到期日),日线支撑3,0,AA,0,COLORGREEN);
*/
//均线参数
均线参考线:=IF(到期日,NULL,EMA(C,13)),NOTEXT;//
均线生命线:=IF(到期日,NULL,EMA(C,21)),NOTEXT;//
//DRAWCOLORLINE(均线生命线>REF(均线生命线,1),均线生命线,COLORRED,COLORGREEN),LINETHICK1;//
//DRAWCOLORLINE(均线参考线>均线生命线,均线生命线,COLORRED,COLORGREEN),LINETHICK1;//
均线做多区间:=均线参考线>均线生命线;
均线做空区间:=均线参考线<均线生命线;
//均线做多区间:=BARSLAST(均线参考线)<BARSLAST(均线生命线)||BARSLAST(均线参考线)>0&&ISNULL(BARSLAST(均线生命线));//
//均线做空区间:=BARSLAST(均线生命线)<BARSLAST(均线参考线)||BARSLAST(均线生命线)>0&&ISNULL(BARSLAST(均线参考线));//
均线金叉:=CROSS (均线参考线,均线生命线);
均线死叉:=CROSSDOWN(均线参考线,均线生命线);
均线高点:=VALUEWHEN(均线做多区间,HHV(H,BARSLASTCOUNT(均线做多区间)));//
均线前次高点:=VALUEWHEN(CROSS(均线做多区间,0.5),REF(均线高点,1));//均线高点前的一个高点
均线低点:=VALUEWHEN(均线做空区间,LLV(L,BARSLASTCOUNT(均线做空区间)));//
均线前次低点:=VALUEWHEN(CROSS(均线做空区间,0.5),REF(均线低点,1));// 均线低点前的一个低点
均线低点上升:=均线低点>均线前次低点;
均线低点下降:=均线低点<均线前次低点;
均线高点上升:=均线高点>均线前次高点;
均线高点下降:=均线高点<均线前次高点;
均线低点相等:=均线低点=均线前次低点;
均线高点相等:=均线高点=均线前次高点;
/**/
//标注均线做多区间的最高价,当根K线的上方。标注均线做空区间的最低价,当根K线的下方。
//DRAWSHIFTNUMBER(CROSSDOWN(均线做多区间,0.5),HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),0,COLORYELLOW,0,HHVBARS(H,BARSLAST(CROSS(均线做多区间,0.5))+1)),VALIGN2,COLORRED;
//DRAWSHIFTNUMBER(CROSSDOWN(均线做空区间,0.5),LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),0,COLORYELLOW,0,LLVBARS(L,BARSLAST(CROSS(均线做空区间,0.5))+1)),VALIGN0,COLORGREEN;
//将K线上方的最高价前后进行比较,后面大的用红色,后面小的用绿色,前后相等时用黄色
//将K线下方的最低价前后进场比较,后面大的用红色,后面小的用绿色,前后相等时用黄色
DRAWSHIFTNUMBER(CROSSDOWN(均线做多区间,0.5)&&HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1)>REF(HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),SUMBARS(CROSSDOWN(均线做多区间,0.5),2)-1),HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),0,COLORYELLOW,0,HHVBARS(H,BARSLAST(CROSS(均线做多区间,0.5))+1)),COLORRED;
DRAWSHIFTNUMBER(CROSSDOWN(均线做多区间,0.5)&&HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1)<REF(HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),SUMBARS(CROSSDOWN(均线做多区间,0.5),2)-1),HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),0,COLORYELLOW,0,HHVBARS(H,BARSLAST(CROSS(均线做多区间,0.5))+1)),COLORGREEN;
DRAWSHIFTNUMBER(CROSSDOWN(均线做多区间,0.5)&&HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1)=REF(HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),SUMBARS(CROSSDOWN(均线做多区间,0.5),2)-1),HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),0,COLORYELLOW,0,HHVBARS(H,BARSLAST(CROSS(均线做多区间,0.5))+1)),COLORYELLOW;
DRAWSHIFTNUMBER(CROSSDOWN(均线做空区间,0.5)&&LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1)>REF(LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),SUMBARS(CROSSDOWN(均线做空区间,0.5),2)-1),LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),0,COLORYELLOW,0,LLVBARS(L,BARSLAST(CROSS(均线做空区间,0.5))+1)),VALIGN0,COLORRED;
DRAWSHIFTNUMBER(CROSSDOWN(均线做空区间,0.5)&&LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1)<REF(LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),SUMBARS(CROSSDOWN(均线做空区间,0.5),2)-1),LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),0,COLORYELLOW,0,LLVBARS(L,BARSLAST(CROSS(均线做空区间,0.5))+1)),VALIGN0,COLORGREEN;
DRAWSHIFTNUMBER(CROSSDOWN(均线做空区间,0.5)&&LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1)=REF(LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),SUMBARS(CROSSDOWN(均线做空区间,0.5),2)-1),LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),0,COLORYELLOW,0,LLVBARS(L,BARSLAST(CROSS(均线做空区间,0.5))+1)),VALIGN0,COLORYELLOW;
//拐点的设置和假拐标识
//假定一个均线做多区间,这个均线做多区间前一个均线做多区间的最高价是上升的,同时这个均线做多区间前一个均线做空区间的最低价也是上升时,那么这个假定均线做多区间的第一根K线的下方标注白色“上”。定义为均线拐多白点
//假定一个均线做空区间,这个均线做空区间前一个均线做空区间的最低价是下降的,同时这个均线做空区间前一个均线做多区间的最高价也是下降时,那么这个假定均线做空区间的第一根K线的上方标注白色“下”。定义为均线拐空白点
均线拐多白点:=均线金叉&&均线低点>均线前次低点&&VALUEWHEN(均线死叉, 均线死叉&&均线高点>均线前次高点);//上破回调不破低点
均线拐空白点:=均线死叉&&均线高点<均线前次高点&&VALUEWHEN(均线金叉, 均线金叉&&均线低点<均线前次低点);//下破反弹不破高点
//将均线拐多白点和均线拐空白点间隔出现,标注变为黄色。定义为均线拐多黄点和均线拐空黄点
均线拐多黄点:=均线拐多白点&&COUNT(均线拐多白点,BARSLAST(均线拐空白点)+1);
均线拐空黄点:=均线拐空白点&&COUNT(均线拐空白点,BARSLAST(均线拐多白点)+1);
//DRAWTEXT(均线拐多黄点, L,'△'),VALIGN0 ,COLORYELLOW ,FONTSIZE40;
//DRAWTEXT(均线拐空黄点, H,'▽'),VALIGN2 ,COLORWHITE ,FONTSIZE40;
//在拐多红点点画红色的竖线,在拐空绿点点画绿色的竖线
VERTLINE(均线拐多黄点,COLORRED ),DOT;
VERTLINE(均线拐空黄点,COLORGREEN),DOT;
//在红色竖线的右侧,均线拐多黄点前均线做空区间最低数值的高度,标注“拐上”
//在绿色竖线的右侧,均线拐空黄点前均线做多区间最高数值的高度,标注“拐下”
//DRAWTEXT(均线拐多黄点,LLV(L,BARSLAST(均线拐空黄点)+1),'拐上'),ALIGN0,FONTSIZE23,COLORYELLOW;//这个是拐区间的高低点
//DRAWTEXT(均线拐空黄点,HHV(H,BARSLAST(均线拐多黄点)+1),'拐下'),ALIGN0,FONTSIZE23,COLORWHITE;//这个是拐区间的高低点
//DRAWTEXT(均线拐多黄点,LLV(L,BARSLAST(CROSS(均线做空区间,0.5))+1),'上'),ALIGN0,FONTSIZE23,COLORYELLOW;
//DRAWTEXT(均线拐空黄点,HHV(H,BARSLAST(CROSS(均线做多区间,0.5))+1),'下'),ALIGN0,FONTSIZE23,COLORWHITE;
//只显示最后一根竖线,颜色不变。 用到未来函数
//VERTLINE(均线拐多黄点&&BACKSET(ISLASTBAR,SUMBARS(均线拐多黄点||均线拐空黄点,1)),COLORRED ),DOT;//用到未来函数
//VERTLINE(均线拐空黄点&&BACKSET(ISLASTBAR,SUMBARS(均线拐多黄点||均线拐空黄点,1)),COLORGREEN),DOT;//用到未来函数
//定义拐点区间
均线拐多区间:=BARSLAST(均线拐多黄点)<BARSLAST(均线拐空黄点)||BARSLAST(均线拐多黄点)>0&&ISNULL(BARSLAST(均线拐空黄点));//
均线拐空区间:=BARSLAST(均线拐多黄点)>BARSLAST(均线拐空黄点)||BARSLAST(均线拐空黄点)>0&&ISNULL(BARSLAST(均线拐多黄点));//
M:=0;
假拐上:=均线死叉&&均线高点<均线前次高点&&COUNT(均线死叉&&均线高点<均线前次高点,BARSLAST(CROSS(均线拐多区间,0.5))+1)&&COUNT(CROSS(均线做多区间,0.5),BARSLAST(CROSS(均线拐多区间,0.5))+1);//假拐上白五星
假拐下:=均线金叉&&均线低点>均线前次低点&&COUNT(均线金叉&&均线低点>均线前次低点,BARSLAST(CROSS(均线拐空区间,0.5))+1)&&COUNT(CROSS(均线做空区间,0.5),BARSLAST(CROSS(均线拐空区间,0.5))+1);//假拐下黄五星
//假拐下 均线拐空区间,第一个均线做空区间的最低点是红色数值时,定义为假拐下,在下一个均线做多区间的第一根K线垂直线的右侧,红色数值的高度,标注“假拐下”。
//假拐上 均线拐多区间,第一个均线做多区间的最高点是绿色数值时,定义为假拐上,在下一个均线做空区间的第一根K线垂直线的右侧,绿色数值的高度,标注“假拐上”。
//KTEXT(CROSS(均线做空区间,0.5)&&EXIST(假拐上,SUMBARS(CROSS(均线做多区间,0.5),1)-1),-0,REF(均线高点+M*MINPRICE,SUMBARS(假拐上,1)-1),1,COLORWHITE, '假上'),FONTSIZE23,VALIGN2,ALIGN0;//和光
//KTEXT(CROSS(均线做多区间,0.5)&&EXIST(假拐下,SUMBARS(CROSS(均线做空区间,0.5),1)-1),-0,REF(均线低点-M*MINPRICE,SUMBARS(假拐下,1)-1),1,COLORYELLOW,'假下'),FONTSIZE23,VALIGN0,ALIGN0;//和光
//假拐上 均线拐多区间,第一个均线做多区间的最高点是绿色数值时,定义为假拐上,在这个最高点位置标注白色空心五角星。
//假拐下 均线拐空区间,第一个均线做空区间的最低点是红色数值时,定义为假拐下,在这个最低点位置标注黄色空心五角星。
KTEXT(假拐上,-REF(HHVBARS(H,BARSLAST(均线金叉)+1),1)-1,均线高点+M*MINPRICE,1,COLORWHITE, '☆'),FONTSIZE40,VALIGN2;
KTEXT(假拐下,-REF(LLVBARS(L,BARSLAST(均线死叉)+1),1)-1,均线低点-M*MINPRICE,1,COLORYELLOW,'☆'),FONTSIZE40,VALIGN0;
//假拐上 均线拐多区间,第一个均线做多区间的最高点是绿色数值时,定义为假拐上,在均线拐空区间第一个均线做空区间的第一根K线垂直线右侧,高度为绿色数值的位置,标注白色空心五角星。
//假拐下 均线拐空区间,第一个均线做空区间的最低点是红色数值时,定义为假拐下,在均线拐多区间第一个均线做多区间的第一根K线垂直线右侧,高度为红色数值的位置,标注黄色空心五角星。
//KTEXT(CROSS(均线做空区间,0.5)&&EXIST(假拐上,SUMBARS(CROSS(均线做多区间,0.5),1)-1),-0,REF(均线高点+M*MINPRICE,SUMBARS(假拐上,1)-1),1,COLORWHITE, '☆'),FONTSIZE23,VALIGN2,ALIGN0;//和光
//KTEXT(CROSS(均线做多区间,0.5)&&EXIST(假拐下,SUMBARS(CROSS(均线做空区间,0.5),1)-1),-0,REF(均线低点-M*MINPRICE,SUMBARS(假拐下,1)-1),1,COLORYELLOW,'☆'),FONTSIZE23,VALIGN0,ALIGN0;//和光
//假拐上 均线拐多区间,第一个均线做多区间的最高点是绿色数值时,定义为假拐上,在均线拐空区间第一个均线做空区间的第一根K线的上方,标注白色空心五角星。
//假拐下 均线拐空区间,第一个均线做空区间的最低点是红色数值时,定义为假拐下,在均线拐多区间第一个均线做多区间的第一根K线的下方,标注黄色空心五角星。
KTEXT(CROSS(均线做空区间,0.5)&&EXIST(假拐上,SUMBARS(CROSS(均线做多区间,0.5),1)-1),-BARSLAST(均线做多区间&&1=COUNT(均线做多区间,BARSLAST(CROSS(均线拐空区间,0.5))+1)),REF(均线高点+M*MINPRICE,BARSLAST(均线做多区间&&1=COUNT(均线做多区间,BARSLAST(CROSS(均线拐空区间,0.5))+1))),1,COLORWHITE, '☆'),FONTSIZE23,VALIGN2,ALIGN0;//和光
KTEXT(CROSS(均线做多区间,0.5)&&EXIST(假拐下,SUMBARS(CROSS(均线做空区间,0.5),1)-1),-BARSLAST(均线做空区间&&1=COUNT(均线做空区间,BARSLAST(CROSS(均线拐多区间,0.5))+1)),REF(均线低点-M*MINPRICE,BARSLAST(均线做空区间&&1=COUNT(均线做空区间,BARSLAST(CROSS(均线拐多区间,0.5))+1))),1,COLORYELLOW,'☆'),FONTSIZE23,VALIGN0,ALIGN0;//和光
//止损点画线
//前后均线做多区间,中间均线做空区间的第二根K线开始到后均线做多区间最后一根K线之间,出现大于或者等于前区最高价的第一根K线,定义为均线上破白点。
//前后均线做空区间,中间均线做多区间的第二根K线开始到后均线做空区间最后一根K线之间,出现小于或者等于前区最低价的第一根K线,定义为均线下破白点。
均线上破白点:=H>=REF(HHV(H,SUMBARS(CROSSUP(均线做多区间,0.5),1)),SUMBARS(CROSSUP(均线做空区间,0.5),1))&&COUNT(H>=REF(HHV(H,SUMBARS(CROSSUP(均线做多区间,0.5),1)),SUMBARS(CROSSUP(均线做空区间,0.5),1)),SUMBARS(CROSSUP(均线做空区间,0.5),1));
均线下破白点:=L<=REF(LLV(L,SUMBARS(CROSSUP(均线做空区间,0.5),1)),SUMBARS(CROSSUP(均线做多区间,0.5),1))&&COUNT(L<=REF(LLV(L,SUMBARS(CROSSUP(均线做空区间,0.5),1)),SUMBARS(CROSSUP(均线做多区间,0.5),1)),SUMBARS(CROSSUP(均线做多区间,0.5),1));
//前后均线做多区间,在前区最高价K线和均线上破白点K线之间连线,高度为前区最高价。
//前后均线做空区间,在前区是低价K线和均线下破白点K线之间连线,高度为前区最低价。
DRAWLINE3(均线上破白点,均线前次高点,0,1,均线前次高点,BARSLAST(均线死叉)+REF(HHVBARS(H,BARSLAST(均线金叉)+1),BARSLAST(均线死叉)),0),DOT,COLORYELLOW;//
DRAWLINE3(均线下破白点,均线前次低点,0,1,均线前次低点,BARSLAST(均线金叉)+REF(LLVBARS(L,BARSLAST(均线死叉)+1),BARSLAST(均线金叉)),0),DOT,COLORWHITE;//
//均线拐多区间时显示下破,也就是做多移动止损线。均线拐空区间时显示上破,也就是做空移动止损线。
//DRAWLINE3(均线拐空区间&&均线上破白点,均线前次高点,0,1,均线前次高点,BARSLAST(均线死叉)+REF(HHVBARS(H,BARSLAST(均线金叉)+1),BARSLAST(均线死叉)),0),DOT,COLORYELLOW;//
//DRAWLINE3(均线拐多区间&&均线下破白点,均线前次低点,0,1,均线前次低点,BARSLAST(均线金叉)+REF(LLVBARS(L,BARSLAST(均线死叉)+1),BARSLAST(均线金叉)),0),DOT,COLORWHITE;//
/*
//保留可用的止损画线 黄色B点或者黄色S点产生的止损画线 齐云编码
DRAWLINE3(均线下破白点&&VALUEWHEN(CROSS(粉色区间,0.5)||CROSS(红色区间,0.5),CROSS(红色区间,0.5)),均线低点,0,1,均线低点,BARSLAST(均线金叉)+REF(LLVBARS(L,BARSLAST(均线死叉)+1),BARSLAST(均线金叉)),0),COLORYELLOW;//齐云
DRAWLINE3(均线上破白点&&VALUEWHEN(CROSS(绿色区间,0.5)||CROSS(青色区间,0.5),CROSS(绿色区间,0.5)),均线高点,0,1,均线高点,BARSLAST(均线死叉)+REF(HHVBARS(H,BARSLAST(均线金叉)+1),BARSLAST(均线死叉)),0),COLORWHITE; //齐云
//最后两行编码,黄色线限制在两次做空进场点之间,白色线限制在两次做多进场点之间 和光 换一下颜色
Q1:=COUNT(做空进场点,BARSLAST(均线金叉)+REF(LLVBARS(L,BARSLAST(均线死叉)+1),BARSLAST(均线金叉))+1)=0;
Q2:=COUNT(做多进场点,BARSLAST(均线死叉)+REF(HHVBARS(H,BARSLAST(均线金叉)+1),BARSLAST(均线死叉))+1)=0;
DRAWLINE3(Q1&&均线下破白点&&VALUEWHEN(CROSS(粉色区间,0.5)||CROSS(红色区间,0.5),CROSS(红色区间,0.5)),均线低点,0,1,均线低点,BARSLAST(均线金叉)+REF(LLVBARS(L,BARSLAST(均线死叉)+1),BARSLAST(均线金叉)),0),DASHDOT,COLORWHITE;//齐云
DRAWLINE3(Q2&&均线上破白点&&VALUEWHEN(CROSS(绿色区间,0.5)||CROSS(青色区间,0.5),CROSS(绿色区间,0.5)),均线高点,0,1,均线高点,BARSLAST(均线死叉)+REF(HHVBARS(H,BARSLAST(均线金叉)+1),BARSLAST(均线死叉)),0),DASHDOT,COLORYELLOW; //齐云
*/
//MACD参数,慢线零轴以上为做多,慢线零轴以下为做空
DIFF :=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA :=EMA(DIFF,9);
MACD:=2*(DIFF-DEA),COLORSTICK;
零轴做多区间:=DEA>0;
零轴做空区间:=DEA<0;
//均线和MACD共振 这里要考虑有一部分是不在这两个区间的。
共振做多区间:=均线做多区间&&零轴做多区间;//
共振做空区间:=均线做空区间&&零轴做空区间;//
均多零下区间:=均线做多区间&&零轴做空区间;//
均空零上区间:=均线做空区间&&零轴做多区间;//
//随机原始参数
随机RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
随机参考线:=SMA(随机RSV,3,1),NOTEXT;//
随机生命线:=SMA(随机参考线,3,1),NOTEXT;//
随机金叉点:=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;//
//标注随机做多区间的最高价,当根K线的上方。标注随机做空区间的最低价,当根K线的下方。
//DRAWSHIFTNUMBER(CROSSDOWN(随机做多区间,0.5),HHV(H,BARSLAST(CROSS(随机做多区间,0.5))+1),HHV(H,BARSLAST(CROSS(随机做多区间,0.5))+1),0,COLORYELLOW,0,HHVBARS(H,BARSLAST(CROSS(随机做多区间,0.5))+1)),VALIGN2,COLORYELLOW;
//DRAWSHIFTNUMBER(CROSSDOWN(随机做空区间,0.5),LLV(L,BARSLAST(CROSS(随机做空区间,0.5))+1),LLV(L,BARSLAST(CROSS(随机做空区间,0.5))+1),0,COLORYELLOW,0,LLVBARS(L,BARSLAST(CROSS(随机做空区间,0.5))+1)),VALIGN0,COLORWHITE;
//红绿粉青区间
红色区间:=共振做多区间&&EXIST(随机做多区间,BARSLASTCOUNT(共振做多区间));//共振做多区间的第一根K线要求在随机做多区间
绿色区间:=共振做空区间&&EXIST(随机做空区间,BARSLASTCOUNT(共振做空区间));//共振做空区间的第一根K线要求在随机做空区间
粉色区间:=均线做多区间&&NOT(红色区间);//
青色区间:=均线做空区间&&NOT(绿色区间);//
//红绿粉青区间K线颜色
DRAWCOLORKLINE(红色区间&&ISDOWN=0,COLORRED, 1);//红色区间
DRAWCOLORKLINE(红色区间&&ISDOWN=1,COLORRED, 0);//红色区间
DRAWCOLORKLINE(绿色区间&&ISDOWN=0,COLORGREEN, 1);//绿色区间
DRAWCOLORKLINE(绿色区间&&ISDOWN=1,COLORGREEN, 0);//绿色区间
DRAWCOLORKLINE(粉色区间&&ISDOWN=0,COLORMAGENTA, 1);//粉色区间
DRAWCOLORKLINE(粉色区间&&ISDOWN=1,COLORMAGENTA, 0);//粉色区间
DRAWCOLORKLINE(青色区间&&ISDOWN=0,COLORCYAN, 1);//青色区间
DRAWCOLORKLINE(青色区间&&ISDOWN=1,COLORCYAN, 0);//青色区间
/*
//红绿粉青背景
DRAWGBK1(红色区间,RGB(64,0,0));//
DRAWGBK1(绿色区间,RGB(0,64,0));
DRAWGBK1(粉色区间,RGB(100,0,100));
DRAWGBK1(青色区间,RGB(0,100,100));
*/
//在多空线上,K线是红色对应该线段是红色,K线是绿色对应绿色,K线是粉色对应是粉色,K线是青色对应是青色。
均线多空线:=IF(到期日,NULL,EMA(C,60)),NOTEXT;//
DRAWLINE3(红色区间&&到期日=0,均线多空线,0,1,REF(均线多空线,1),1,0),COLORRED ,LINETHICK2;
DRAWLINE3(绿色区间&&到期日=0,均线多空线,0,1,REF(均线多空线,1),1,0),COLORGREEN ,LINETHICK2;
DRAWLINE3(粉色区间&&到期日=0,均线多空线,0,1,REF(均线多空线,1),1,0),COLORMAGENTA ,LINETHICK2;
DRAWLINE3(青色区间&&到期日=0,均线多空线,0,1,REF(均线多空线,1),1,0),COLORCYAN ,LINETHICK2;