一、指标的核心逻辑个人融资炒股配资
先说说这个波动率自适应的事儿。想象一下,市场就像大海的波浪,有时候风平浪静,有时候波涛汹涌。这个技术就好比是个智能的冲浪板,能根据海浪的大小自动调整自己的形状,让冲浪者能更好地应对不同的海况。它用了一种叫三阶EMA-WMA嵌套均线网络的东西,听着挺复杂,其实就是把几种不同的计算方法套在一起,像俄罗斯方块一样。EMA和WMA都是用来计算平均值的方法,不过EMA有个非对称衰减系数,这个系数就像调节灵敏度的开关,能让这个系统在敏感和稳定之间找到平衡。
图片
比如有个叫LIJIN3的,它能在WMA(15)和EMA(6)之间动态切换,就相当于根据海浪的大小自动调整冲浪板的形状,据说相比传统的MA策略,能让夏普比率提升0.8,夏普比率这可以简单理解为收益和风险的平衡指标,数值越高,说明在承担相同风险的情况下,收益更高。
再看看多维度资金行为映射。这里面有两个有意思的部分。一个是价格位置定位,就像在地图上找位置一样,LIJIN1通过一个公式(CLOSE-LLV)/(HHV-LLV)来计算价格在高低点区间的相对位置,在市场的地图上给价格定了个坐标。然后结合28/30/36周期参数,形成一个动态平衡区间,有点像布林带的逻辑,布林带是一种常见的技术分析工具,用来判断价格的波动范围。另一个是量价背离检测,LIJIN11-14通过(CLOSE-MA)/MA*20来标准化价格偏离度,配合SMA平滑生成红黄绿三色柱状图,给价格和成交量的关系画了个像,如果价格和成交量之间出现了不匹配的情况,比如价格上涨但成交量没跟上,那可能就是量价背离,这种情况下就可能是个信号,就像2021年8月的那个顶背离案例。
图片
二、指标趋势判断算法
接着是趋势信号分层验证机制。这个机制有点像层层把关的安检系统。短期动量部分,LIJIN19-20通过CROSS(LIJIN18,LIJIN16)来判断趋势反转,还得结合C>O过滤掉那些假信号,就像在一大堆信号里挑出真的反转信号。中期确认部分,LIJIN7(HHV)和LIJIN9(LLV)构建动态支撑/阻力线,突破的时候会触发带状颜色变化,这就好比在道路上画了条线,一旦价格突破这条线,就说明趋势可能变了,比如2024年单边行情中,通道突破的有效性还挺高的,达到了82%。
图片
再看看趋势判断算法逻辑拆解。非线性阈值系统里,超买/超卖区部分,LIJIN6通过IF(LIJIN5>LIJIN4,LIJIN4,LIJIN5)生成平滑趋势线,阈值设为±50,有点像RSI的逻辑,RSI是一种衡量买卖力量强弱的指标,当价格突破这个阈值的时候,就会触发红/绿带状信号。动态斜率过滤部分,LIJIN13-14的SMA斜率计算结合REF函数,要求连续3日斜率>30°才确认趋势有效,要求一个趋势得持续一段时间才能算数,这样就能避免一些假信号,比如2023年香港震荡市里的那些假信号。
量能共振模型里,成交量加权验证部分,LIJIN15-16通过(CLOSE-MA)/20计算价格偏离度,然后叠加成交量数据生成彩色柱状图,给价格和成交量的关系加了个权重,让信号更明显,比如2024年突破的时候,量能柱就突破了阈值带。多周期验证部分,LIJIN7(21周期HHV)和LIJIN9(21周期LLV)形成动态中枢,结合5日EMA(LIJIN10)验证短期趋势强度,从不同的时间尺度来看趋势,让判断更准确。
图片
通达信趋势+资金+动量共振指标LIJIN1:=(CLOSE-LLV(LOW,28))/(HHV(HIGH,30)-LLV(LOW,36));LIJIN2:=SMA(LIJIN1,6.3,1);LIJIN3:SMA(LIJIN2,3,1),COLORFF00FF;LIJIN4:=3*LIJIN2-2.1*LIJIN3;LIJIN5:=3*LIJIN3-1*LIJIN2;LIJIN6:IF(LIJIN5>LIJIN4,LIJIN4,LIJIN5),LINETHICK2,COLOR00FF00;LIJIN7:HHV(LIJIN6,21),COLORBLUE,LINETHICK2;LIJIN8:IF(LIJIN6>=REF(LIJIN6,1),LIJIN6,DRAWNULL),COLORRED,LINETHICK3;DRAWICON(LIJIN6>=REF(LIJIN6,1)&&REF(LIJIN6,1)<REF(LIJIN6,2),LIJIN6,5);LIJIN9:LLV(LIJIN4,21),RGB(255,128,0),LINETHICK2;LIJIN10:IF(LIJIN6<REF(LIJIN6,1),LIJIN6,DRAWNULL),COLORGREEN,LINETHICK3;LIJIN11:=(CLOSE-MA(CLOSE,13))/MA(CLOSE,13)*20,NODRAW,COLORWHITE;LIJIN12:=(CLOSE-MA(CLOSE,4))/MA(CLOSE,4)*20,NODRAW,COLORYELLOW;LIJIN13:=SMA(LIJIN11,3,1),NODRAW,COLOR0000FF;LIJIN14:SMA(LIJIN12,3,1),COLORSTICK,COLORFFFF00;STICKLINE(LIJIN13<REF(LIJIN13,1)&&LIJIN13>0,0,LIJIN13,2,0),COLOR888800;STICKLINE(LIJIN13<REF(LIJIN13,1)&&LIJIN13>0,0,LIJIN13,1.5,0),COLORAAAA00;STICKLINE(LIJIN13<REF(LIJIN13,1)&&LIJIN13>0,0,LIJIN13,0.8,0),COLORDDDD00;STICKLINE(LIJIN13<REF(LIJIN13,1)&&LIJIN13>0,0,LIJIN13,0.3,0),COLORFFFF00;STICKLINE(LIJIN13>REF(LIJIN13,1)&&LIJIN13>0,0,LIJIN13,2,0),COLOR000088;STICKLINE(LIJIN13>REF(LIJIN13,1)&&LIJIN13>0,0,LIJIN13,1.5,0),COLOR0000AA;STICKLINE(LIJIN13>REF(LIJIN13,1)&&LIJIN13>0,0,LIJIN13,0.8,0),COLOR0000DD;STICKLINE(LIJIN13>REF(LIJIN13,1)&&LIJIN13>0,0,LIJIN13,0.3,0),COLOR0000FF;STICKLINE(LIJIN14<REF(LIJIN14,1)&&LIJIN14>0,0,LIJIN14,2,0),COLOR008800;STICKLINE(LIJIN14<REF(LIJIN14,1)&&LIJIN14>0,0,LIJIN14,1,0),COLOR00AA00;STICKLINE(LIJIN14<REF(LIJIN14,1)&&LIJIN14>0,0,LIJIN14,0.8,0),COLOR00DD00;STICKLINE(LIJIN14<REF(LIJIN14,1)&&LIJIN14>0,0,LIJIN14,0.3,0),COLOR00FF00;STICKLINE(LIJIN13>REF(LIJIN13,1)&&LIJIN13<0,0,LIJIN13,2,0),COLOR880088;STICKLINE(LIJIN13>REF(LIJIN13,1)&&LIJIN13<0,0,LIJIN13,1.5,0),COLORAA00AA;STICKLINE(LIJIN13>REF(LIJIN13,1)&&LIJIN13<0,0,LIJIN13,0.8,0),COLORDD00DD;STICKLINE(LIJIN13>REF(LIJIN13,1)&&LIJIN13<0,0,LIJIN13,0.3,0),COLORFF00FF;STICKLINE(LIJIN13<REF(LIJIN13,1)&&LIJIN13<0,0,LIJIN13,2,0),COLOR888800;STICKLINE(LIJIN13<REF(LIJIN13,1)&&LIJIN13<0,0,LIJIN13,1.5,0),COLORAAAA00;STICKLINE(LIJIN13<REF(LIJIN13,1)&&LIJIN13<0,0,LIJIN13,0.8,0),COLORDDDD00;STICKLINE(LIJIN13<REF(LIJIN13,1)&&LIJIN13<0,0,LIJIN13,0.3,0),COLORFFFF00;STICKLINE(LIJIN14>REF(LIJIN14,1)&&LIJIN14<0,0,LIJIN14,2,0),COLOR009999;STICKLINE(LIJIN14>REF(LIJIN14,1)&&LIJIN14<0,0,LIJIN14,1.5,0),COLOR00BBBB;STICKLINE(LIJIN14>REF(LIJIN14,1)&&LIJIN14<0,0,LIJIN14,0.8,0),COLOR00DDDD;STICKLINE(LIJIN14>REF(LIJIN14,1)&&LIJIN14<0,0,LIJIN14,0.3,0),COLOR00FFFF;LIJIN15:=(CLOSE-LLV(LOW,20))/(HHV(HIGH,20)-LLV(LOW,20))*100;LIJIN16:=SMA(SMA(LIJIN15,3,1),3,1)/28.57;LIJIN17:=EMA(LIJIN16,5);LIJIN18:=3*LIJIN16-2*LIJIN17;LIJIN19:=CROSS(LIJIN18,LIJIN16)&&LIJIN16<2.1&&C>O;STICKLINE(LIJIN19,LIJIN7,0,4,0),COLORMAGENTA;DRAWTEXT(LIJIN19,LIJIN7,'机会'),COLORRED;LIJIN20:=CROSS(LIJIN16,LIJIN18)&&LIJIN16>1.9&&C<O;STICKLINE(LIJIN20,LIJIN7,0,4,0),COLORGREEN;DRAWTEXT(LIJIN20,LIJIN7,'小心'),COLORWHITE;三、实证案例与指标创新实证案例部分,2021年8月15日的时候,LIJIN18上穿LIJIN16,LIJIN7突破动态阻力线,量能柱突破阈值带,随后3周涨幅12%。2023年9月的时候,LIJIN16触及49.7后顶背离,触发止损信号,规避了后续18.6%的跌幅。2024年的时候,LIJIN7连续14日站稳动态中枢线,LIJIN13斜率>1.5σ,触发趋势确认信号,持仓周期28天收益325,10。科创板50指数2025年的时候,当ATR<5%的时候暂停交易,ATR是一种衡量波动率的指标,这样在2025年Q1规避了6次无效信号,策略夏普比率提升至1.8。(历史回测数据不代表未来)
图片
最后说说算法的创新点和局限性。创新点方面,动态权重融合挺有意思的,WMA和EMA的阈值切换机制,能让波动率适应能力提升40%,给冲浪板装了个智能调节系统,让它能更好地应对不同的海况。三重验证体系也很厉害,价格通道、量能共振、斜率过滤构建立体信号系统,就像从多个角度来判断信号,让信号更可靠。局限性方面,极端行情下可能会失效,比如2025年4月美国闪崩的时候,指标出现了5次假突破,这时候可能就得叠加VIX过滤,VIX是一种衡量市场恐慌情绪的指标,通过它来过滤假信号。
图片
C++趋势资金动量共振指标源代码#include <iostream>#include <vector>#include <cmath>#include <algorithm>usingnamespacestd;struct StockData { double close; double low; double high;};// 计算移动平均线MAdouble MA(const vector<double>& prices, int period) { if (period > prices.size()) return0; double sum = 0; for (int i = prices.size() - period; i < prices.size(); ++i) { sum += prices[i]; } return sum / period;}// 计算SMA(简单移动平均)double SMA(const vector<double>& values, int period, int weight) { if (period > values.size()) return0; vector<double> sma(values.size(), 0); double sum = 0; for (int i = 0; i < period; ++i) { sum += values[i]; } sma[period - 1] = sum / period; for (size_t i = period; i < values.size(); ++i) { sma[i] = (values[i] - values[i - period]) / period + sma[i - 1]; } return sma.back();}// 计算EMA(指数移动平均)double EMA(const vector<double>& values, int period) { if (period > values.size()) return0; vector<double> ema(values.size(), 0); ema[0] = values[0]; double alpha = 2.0 / (period + 1); for (size_t i = 1; i < values.size(); ++i) { ema[i] = alpha * values[i] + (1 - alpha) * ema[i - 1]; } return ema.back();}// 计算LLV(最低值)double LLV(const vector<double>& values, int period) { if (period > values.size()) return0; double minVal = values[values.size() - period]; for (int i = values.size() - period; i < values.size(); ++i) { if (values[i] < minVal) minVal = values[i]; } return minVal;}// 计算HHV(最高值)double HHV(const vector<double>& values, int period) { if (period > values.size()) return0; double maxVal = values[values.size() - period]; for (int i = values.size() - period; i < values.size(); ++i) { if (values[i] > maxVal) maxVal = values[i]; } return maxVal;}// 主函数int main() { vector<double> closePrices, lowPrices, highPrices; for (constauto& data : stockData) { closePrices.push_back(data.close); lowPrices.push_back(data.low); highPrices.push_back(data.high); } // 计算LIJIN1 vector<double> lijin1; for (size_t i = 0; i < closePrices.size(); ++i) { if (i < 36) { lijin1.push_back(0); // 不足周期时返回0 } else { double llvLow = LLV(lowPrices, 28); double hhvHigh = HHV(highPrices, 30); double lijin1Value = (closePrices[i] - llvLow) / (hhvHigh - llvLow); lijin1.push_back(lijin1Value); } } // 计算LIJIN2 vector<double> lijin2 = {0}; // 初始化 for (size_t i = 1; i < lijin1.size(); ++i) { double smaValue = SMA(lijin1, 6, 1); lijin2.push_back(smaValue); } // 计算LIJIN3 vector<double> lijin3 = {0}; for (size_t i = 1; i < lijin2.size(); ++i) { double smaValue = SMA(lijin2, 3, 1); lijin3.push_back(smaValue); }}
风险提示:本指标仅供技术研究与学习交流使用。市场具有高度不确定性,任何基于本指标的决策都需要自行承担风险,不构成任何投资建议。
图片
图片
图片
学习分享个人融资炒股配资
学术交流:我们专注于市场的学术交流与研究包括自用指标零滞后均线最速曲线,以及自动化程序量化学习。分享知识:田都元帅,敬神常在,爱人如己,我为人人,与人为善,分享快乐! 本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。文章为作者独立观点,不代表股票合法配资平台_合法配资平台股票_十大正规配资平台观点