黄金交叉买入法介绍
以下代码由今日美股网(www.TodayUSStock.com)代码学院提供,黄金交叉买入法是一种综合性的技术分析策略,结合了移动平均线(MA)、移动平均汇聚背离指标(MACD)以及随机指标(KDJ)的信号。当这些指标同时发出买入信号时,称为“黄金交叉”,通常标志着趋势可能正在转向或强化上涨,提高了买入的胜率。
参数与数值的意义
指标 | 参数 | 数值 | 意义 |
---|---|---|---|
MA | 短期、长期MA | 5天、20天 | 短期MA上穿长期MA,确认上升趋势的开始。 |
MACD | FAST、SLOW、SIGNAL | 12、26、9 | MACD线上穿信号线(DIF上穿DEA),表示动量转向买方。 |
KDJ | RSV、K、D周期 | 9天、3、3 | K线上穿D线形成金叉,表明短期内价格可能上涨。 |
针对不同产品的推荐参数
产品类型 | 推荐参数(MA, MACD, KDJ) | 推荐理由 |
---|---|---|
股票 | (5, 20), (12, 26, 9), (9, 3, 3) | 适用于大多数股票市场的日线图,提供较好的短期、中期趋势信号。 |
外汇 | (10, 30), (12, 26, 9), (9, 3, 3) | 外汇市场波动较大,使用较长的MA周期以减少噪音。 |
期货 | (5, 20), (12, 26, 9), (9, 3, 3) | 期货市场趋势性强,标准参数通常有效。 |
国内股票软件代码
通达信(中国)
// 通达信黄金交叉买入法选股公式 MA5:=MA(CLOSE,5); MA20:=MA(CLOSE,20); MACD:=EMA(CLOSE,12)-EMA(CLOSE,26); DEA:=EMA(MACD,9); RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100; K:=SMA(RSV,3,1); D:=SMA(K,3,1); // 黄金交叉条件 GOLDEN_CROSS:=CROSS(MA5,MA20) AND CROSS(MACD,DEA) AND CROSS(K,D);
加载方法:进入“公式系统”菜单,选择“自定义指标”,输入或粘贴代码,保存为新指标,然后在图表中加载或在选股条件中使用。
同花顺(中国)
// 同花顺黄金交叉买入法选股公式 MA5:=MA(C,5); MA20:=MA(C,20); MACD:=EMA(C,12)-EMA(C,26); DEA:=EMA(MACD,9); RSV:=(C-LLV(L,9))/(HHV(H,9)-LLV(L,9))*100; K:=SMA(RSV,3,1); D:=SMA(K,3,1); // 黄金交叉条件 GOLDEN_CROSS:=CROSS(MA5,MA20) AND CROSS(MACD,DEA) AND CROSS(K,D);
加载方法:进入“选股器”或“条件选股”,选择“自定义选股公式”,输入或粘贴代码并保存,运行选股。
大智慧(中国)
// 大智慧黄金交叉买入法选股公式 MA5:=MA(CLOSE,5); MA20:=MA(CLOSE,20); MACD:=EMA(CLOSE,12)-EMA(CLOSE,26); DEA:=EMA(MACD,9); RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100; K:=SMA(RSV,3,1); D:=SMA(K,3,1); // 黄金交叉条件 GOLDEN_CROSS:=CROSS(MA5,MA20) AND CROSS(MACD,DEA) AND CROSS(K,D);
加载方法:进入“自定义指标”或“选股”功能,选择“公式编辑器”,输入代码并保存,应用到图表或选股器中。
国外股票软件代码
MetaTrader 4/5 (MT4/MT5)
// MetaTrader 4/5 黄金交叉买入法选股公式 double ma5 = iMA(NULL, 0, 5, 0, MODE_SMA, PRICE_CLOSE, 0); double ma20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, 0); double macdLine = iMACD(NULL, 0, 12, 26, 9, PRICE_CLOSE, MODE_MAIN, 0); double signalLine = iMACD(NULL, 0, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 0); double rsv = (Close[0] - iLowest(NULL, 0, MODE_LOW, 9, 0)) / (iHighest(NULL, 0, MODE_HIGH, 9, 0) - iLowest(NULL, 0, MODE_LOW, 9, 0)) * 100; double k = iMAOnArray(rsv, 0, 3, 0, MODE_SMA, 1); double d = iMAOnArray(k, 0, 3, 0, MODE_SMA, 1); if (ma5 > ma20 && macdLine > signalLine && k > d) return true; else return false;
加载方法:在“导航器”中右键点击“指标”选项,选择“自定义指标”,点击“新建”,粘贴代码,保存并编译指标,然后应用到图表上。
TradingView (Pine Script)
// TradingView 黄金交叉买入法选股公式 study("Golden Cross Buy Signal", shorttitle="Golden Cross", overlay=true) ma5 = sma(close, 5) ma20 = sma(close, 20) [macdLine, signalLine, _] = macd(close, 12, 26, 9) rsv = (close - lowest(low, 9)) / (highest(high, 9) - lowest(low, 9)) * 100 k = sma(rsv, 3) d = sma(k, 3) goldenCross = crossover(ma5, ma20) and crossover(macdLine, signalLine) and crossover(k, d) plotshape(goldenCross, title="Golden Cross", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
加载方法:在图表上点击“Pine Editor”,新建脚本,粘贴代码,保存并应用到图表。
Thinkorswim (美国)
// Thinkorswim 黄金交叉买入法选股公式 declare lower; input ma5Period = 5; input ma20Period = 20; input fastLength = 12; input slowLength = 26; input signalLength = 9; input kdjPeriod = 9; input kdjK = 3; input kdjD = 3; def ma5 = Average(close, ma5Period); def ma20 = Average(close, ma20Period); def Value = close - Lowest(low, kdjPeriod); def Range = Highest(high, kdjPeriod) - Lowest(low, kdjPeriod); def RSV = if Range != 0 then Value / Range * 100 else 0; def K = ExpAverage(RSV, kdjK); def D = ExpAverage(K, kdjD); def MACD = ExpAverage(close, fastLength) - ExpAverage(close, slowLength); def Signal = ExpAverage(MACD, signalLength); plot GoldenCross = if ma5 crosses above ma20 and MACD crosses above Signal and K crosses above D then 1 else 0;
加载方法:在图表上点击“研究”标签,选择“编辑研究”,然后“新建研究”,粘贴代码并保存。
NinjaTrader (美国)
// NinjaTrader 黄金交叉买入法选股公式 protected override void OnBarUpdate() { double ma5 = SMA(Close, 5)[0]; double ma20 = SMA(Close, 20)[0]; double macdLine = MACD(12, 26)[0]; double signalLine = MACD(12, 26, true)[0]; double rsv = (Close[0] - Lowest(Low, 9)[0]) / (Highest(High, 9)[0] - Lowest(Low, 9)[0]) * 100; double k = SMA(rsv, 3)[0]; double d = SMA(k, 3)[0]; if (ma5 > ma20 && macdLine > signalLine && k > d) Alert("Golden Cross Buy Signal Detected"); }
加载方法:从“新建”菜单中选择“指标”,编写或粘贴代码,编译并应用到图表。
eSignal (全球)
// eSignal 黄金交叉买入法选股公式(需要转换到易语言) MA5:=Mov(C,5,S); MA20:=Mov(C,20,S); MACD:=Mov(C,12,E)-Mov(C,26,E); DEA:=Mov(MACD,9,E); RSV:=(C-LLV(L,9))/(HHV(H,9)-LLV(L,9))*100; K:=Mov(RSV,3,S); D:=Mov(K,3,S); // 黄金交叉条件 GOLDEN_CROSS:=CROSS(MA5,MA20) AND CROSS(MACD,DEA) AND CROSS(K,D);
加载方法:使用“易语言”编写指标,代码需要转换,在“指标”菜单中加载新指标。
优点和缺点
优点 | 缺点 |
---|---|
多指标确认,降低假信号概率 | 在震荡市场可能错过短期机会 |
提高买入决策的信心 | 在趋势反转初期可能失效 |
适用于发现趋势的转折点 | 需要较多市场数据支持,计算复杂 |
如何正确使用
注意市场的整体态势,重大事件可能影响信号的有效性。
结合更长期的图表确认黄金交叉是否是真正趋势的开始。
使用止损策略以控制风险,因为即使是黄金交叉,市场也可能迅速转向。
进行回测或模拟交易,验证策略在不同市场环境下的表现。
观察成交量的变化,以确认黄金交叉的可靠性。
使用注意事项
黄金交叉买入法在趋势明显的市场中表现出色,但在横盘或无趋势市场中可能提供误导信号。应结合基本面分析和市场情绪,综合判断。此外,市场的流动性和波动性也可能影响指标的准确性。
来源:今日美股网