riod 可变 用于计算通道的高低点的时间周期,通常根据市场和投资者偏好选择。 Channel Width 可变 通道宽度,可以设置为固定值或基于某种标准差或百分比来动态调整。 针对不同产品的推荐参数 产品类型 推荐参数(Period, Channel Width) 推荐理由 股票日线图 20天, 2% AT 中期趋势分析,2%的平均真实范围(ATR)作为通道宽度较为常用。 外汇或加密货币(短期图表) 10天, 1% AT 市场波动大,使用较短周期和较窄通道以快速反应。 期货市场 20天, 2% AT 趋势性强,标准参数通常有效。 国内股票软件代码 通达信(中国) // 通达信趋势通道选股公式
// 假设使用20日均线作为基线,2%的ATR作为通道宽度
MA20:=MA(CLOSE,20);
ATR:=MA(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),20);
UPPER_BAND:=MA20+ATR*0.02;
LOWER_BAND:=MA20-ATR*0.02;
BUY_SIGNAL:=CLOSE>UPPER_BAND;
SELL_SIGNAL:=CLOSE 加载方法:进入“公式系统”菜单,选择“自定义指标”,输入或粘贴代码,保存为新指标,然后在图表中加载或在选股条件中使用。 同花顺(中国) // 同花顺趋势通道选股公式
MA20:=MA(C,20);
ATR:=MA(MAX(MAX(H-L,ABS(H-REF(C,1))),ABS(L-REF(C,1))),20);
UPPER_BAND:=MA20+ATR*0.02;
LOWER_BAND:=MA20-ATR*0.02;
BUY_SIGNAL:=C>UPPER_BAND;
SELL_SIGNAL:=C 加载方法:进入“选股器”或“条件选股”,选择“自定义选股公式”,输入或粘贴代码并保存,运行选股。 大智慧(中国) // 大智慧趋势通道选股公式
MA20:=MA(CLOSE,20);
ATR:=MA(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),20);
UPPER_BAND:=MA20+ATR*0.02;
LOWER_BAND:=MA20-ATR*0.02;
BUY_SIGNAL:=CLOSE>UPPER_BAND;
SELL_SIGNAL:=CLOSE 加载方法:进入“自定义指标”或“选股”功能,选择“公式编辑器”,输入代码并保存,应用到图表或选股器中。 国外股票软件代码 MetaTrader 4/5 (MT4/MT5) // MetaTrader 4/5 趋势通道选股公式
double ma20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, 0);
double atr = iATR(NULL, 0, 20, 0);
double upperBand = ma20 + atr * 0.02;
double lowerBand = ma20 - atr * 0.02;
if (Close[0] > upperBand) return true; // Buy Signal
if (Close[0] < lowerBand) return false; // Sell Signal 加载方法:在“导航器”中右键点击“指标”选项,选择“自定义指标”,点击“新建”,粘贴代码,保存并编译指标,然后应用到图表上。 TradingView (Pine Script) // TradingView 趋势通道选股公式
study("Trend Channel Trading", shorttitle="Trend Channel", overlay=true)
ma20 = sma(close, 20)
atr = sma(tr(true), 20)
upperBand = ma20 + atr * 0.02
lowerBand = ma20 - atr * 0.02
buySignal = close > upperBand
sellSignal = close < lowerBand
plot(upperBand, color=color.green, linewidth=2)
plot(lowerBand, color=color.red, linewidth=2)
plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small) 加载方法:在图表上点击“Pine Editor”,新建脚本,粘贴代码,保存并应用到图表。 Thinkorswim (美国) // Thinkorswim 趋势通道选股公式
declare lower;
input period = 20;
input channelWidth = 0.02;
def ma20 = Average(close, period);
def atr = Average(TrueRange(high, close, low), period);
def upperBand = ma20 + atr * channelWidth;
def lowerBand = ma20 - atr * channelWidth;
plot BuySignal = if close > upperBand then 1 else 0;
plot SellSignal = if close < lowerBand then 1 else 0; 加载方法:在图表上点击“研究”标签,选择“编辑研究”,然后“新建研究”,粘贴代码并保存。 NinjaTrader (美国) // NinjaTrader 趋势通道选股公式
protected override void OnBarUpdate()
{
int period = 20;
double channelWidth = 0.02;
double ma20 = SMA(Close, period)[0];
double atr = SMA(ATR(1), period)[0];
double upperBand = ma20 + atr * channelWidth;
double lowerBand = ma20 - atr * channelWidth;
if (Close[0] > upperBand)
Alert("Buy Signal - Price above Upper Band");
if (Close[0] < lowerBand)
Alert("Sell Signal - Price below Lower Band");
} 加载方法:从“新建”菜单中选择“指标”,编写或粘贴代码,编译并应用到图表。 eSignal (全球) // eSignal 趋势通道选股公式(需要转换到易语言)
MA20:=Mov(C,20,S);
ATR:=Mov(MAX(MAX(H-L,ABS(H-REF(C,1))),ABS(L-REF(C,1))),20,S);
UPPER_BAND:=MA20+ATR*0.02;
LOWER_BAND:=MA20-ATR*0.02;
BUY_SIGNAL:=C>UPPER_BAND;
SELL_SIGNAL:=C 加载方法:使用“易语言”编写指标,代码需要转换,在“指标”菜单中加载新指标。 优点和缺点 优点 缺点 明确的进出场点,减少决策难度 在横盘市场中可能失效 有助于控制风险,通过下轨止损 在趋势反转初期可能提供误导信号 适用于多种时间框架的趋势交易 需要调整通道宽度以适应市场波动 如何正确使用 在趋势明显的市场中效果最佳,确认市场是否处于明确的趋势中。 结合其他技术分析工具(如动量指标或成交量)来验证通道信号。 动态调整通道宽度以适应市场波动性。 注意市场的整体环境,避免在大事件公布时使用此策略。 回测策略,以评估在不同市场条件下的表现。 使用注意事项 趋势通道策略在趋势市场中表现良好,但在无趋势或震荡市场中可能提供误导性信号。需要结合市场背景分析,市场波动性和流动性也应考虑在内。另外,通道可能会在价格快速突破时失效,因此需要结合其他方法来确认突破的有效性。 来源:今日美股网lg...