ususdt 发表于 2022-8-10 14:46:20

关于一个CCI指标拐点的实现思路

思路:
想着用一个单线指标来实现拐点判断,当出现拐点的时候,在主图做出提示
目前最适合用的就是CCI平滑后的拐点
先实现CCI平滑
<p>lengthcci = input(title="CCI周期", type="number", value=20);</p><p>lengthph = input(title="平滑周期", type="number", value=3);</p><p>lengthphz = input(title="平滑增值", type="number", value=2);</p><p>
</p><p>tp = (high+low+close) / 3;</p><p>mt = ma(tp,lengthcci);</p><p>md = ma(abs(mt-tp),lengthcci);</p><p>cci = (tp-mt) / md /0.015;</p><p>cciph=ma(ma(cci,lengthph),lengthph + lengthphz);</p>

我在平滑处理时用了二次平滑,能让走势忽略更多小拐点

然后写拐点判断
<p>drawText(every(cciph<-100,4)&&cciph>ref(cciph,1)&&ref(cciph,1)>ref(cciph,2)&&ref(cciph,2)>ref(cciph,3)&&ref(cciph,3)>ref(cciph,4),low,"↑",y=10,color="white");</p><p>drawText(every(cciph<-100,4)&&cciph>ref(cciph,1)&&ref(cciph,1)>ref(cciph,2)&&ref(cciph,2)>ref(cciph,3)&&ref(cciph,3)>ref(cciph,4),low,开多,y=30,color="white");</p><p>
</p><p>drawText(every(cciph>100,4)&&cciph<ref(cciph,1)&&ref(cciph,1)<ref(cciph,2)&&ref(cciph,2)<ref(cciph,3)&&ref(cciph,3)<ref(cciph,4),high,"↓",y=-10,color="white");</p><p>drawText(every(cciph>100,4)&&cciph<ref(cciph,1)&&ref(cciph,1)<ref(cciph,2)&&ref(cciph,2)<ref(cciph,3)&&ref(cciph,3)<ref(cciph,4),high,开空,y=-30,color="white");</p>
先列出所有cci平滑后小于-100和大于100的数值区域,然后连续四个数递增减小,提示做空信号,连续四个数递增增大,提示做多信号以BTC5m测试出来的结果如图



结果不是很理想

再次梳理思路,把范围缩小到在cciph值处于100和120、-100和-120之间的才显示(CCI上穿-100和下穿100做单时机)
<p>drawText(every(cciph<-100,4)&&cciph>ref(cciph,1)&&ref(cciph,1)>ref(cciph,2)&&ref(cciph,2)>ref(cciph,3)&&ref(cciph,3)>ref(cciph,4)&&cci>=-120,low,"↑",y=10,color="white");</p><p>drawText(every(cciph<-100,4)&&cciph>ref(cciph,1)&&ref(cciph,1)>ref(cciph,2)&&ref(cciph,2)>ref(cciph,3)&&ref(cciph,3)>ref(cciph,4)&&cci>=-120,low,text1,y=30,color="white");</p><p>
</p><p>drawText(every(cciph>100,4)&&cciph<ref(cciph,1)&&ref(cciph,1)<ref(cciph,2)&&ref(cciph,2)<ref(cciph,3)&&ref(cciph,3)<ref(cciph,4)&&cci<=120,high,"↓",y=-10,color="white");</p><p>drawText(every(cciph>100,4)&&cciph<ref(cciph,1)&&ref(cciph,1)<ref(cciph,2)&&ref(cciph,2)<ref(cciph,3)&&ref(cciph,3)<ref(cciph,4)&&cci<=120,high,text2,y=-30,color="white");</p>

出来的结果也不理想,反而过滤掉了之前比较好的信号

目前思路停滞····再想想如何能准确的判断并显示做单信号吧

网友@齐楠见解:
cci看卖出点位不是很准确因为是相对强弱。例如较低点卖出时cci显示200,后来价格变高后回落(还是比较低点高),这时cci已经返回到了正常范围(大于0),所以需要其他指标的辅助,因此单独cci有些误导


但是CCI结合其他指标过滤后,信号就不剩啥了,这也是个问题。并且CCI超买超卖区域习惯性背离,信号点总是会提前出现,并非在最高最低点,也是不适合这样去实现信号的问题之一

页: [1]
查看完整版本: 关于一个CCI指标拐点的实现思路