指标 · 工具指标库 · Pine v6

维加斯通道过滤 · 华尔街没有名字

以 EMA 144 与 EMA 169 构成维加斯趋势通道,并用 EMA 12 和收盘价共同确认多空方向切换;同方向只提示首次转向,减少重复信号。

说明

使用说明

作者/来源:原文件署名:华尔街没有名字

适用市场:加密货币、外汇、指数、股票等具备连续 OHLC 数据且流动性较好的市场。

适用周期:仅在 1H、4H 和日线生效;其他周期不绘制均线与信号。

参数:EMA 144 长度默认 144;EMA 169 长度默认 169;快速 EMA 长度默认 12。EMA 144 与 EMA 169 的较高值为通道上轨,较低值为通道下轨。

功能:当 EMA 12 与收盘价同时位于 EMA 144/169 通道上方,指标首次标记多头转向;两者同时位于通道下方时,首次标记空头转向。右上角表格显示三条均线,脚本同时提供多头和空头 alertcondition,消息采用 Discord Webhook JSON 格式。

适用场景:适合用作 1H、4H 的趋势方向过滤,以及日线级别的大方向确认;可与结构突破、支撑阻力或回踩策略配合,避免在通道中间频繁追单。不适合作为单独的开仓、止损或仓位管理系统。

版本记录

发布信息

更新时间:2026-11-02

状态:已发布

2026-11-02:首次收录。保留原文件的 EMA 12/144/169 维加斯通道、首次趋势切换标记、右上角说明表格和多空预警。

社区互动

点赞与评论

欢迎分享你对这个指标的使用体验。评论仅用于研究交流,不构成投资建议。

评论 (0)

还没有评论。

TradingView / Pine Script

源码

源码仅在作者确认可公开后展示,复制后请自行核对版本和适用范围。

//@version=6
indicator("维加斯通道过滤--华尔街没有名字", overlay=true)

// === 输入参数 ===
ema144_length = input.int(144, title="EMA 144 长度")
ema169_length = input.int(169, title="EMA 169 长度")
ema12_length = input.int(12, title="EMA 12 长度")

// === 计算 EMA ===
ema144 = ta.ema(close, ema144_length)
ema169 = ta.ema(close, ema169_length)
ema12 = ta.ema(close, ema12_length)

// === 通道上、下轨 ===
upper_channel = math.max(ema144, ema169)
lower_channel = math.min(ema144, ema169)

// === 时间过滤:只在 1H、4H、日线生效 ===
is_valid_timeframe = timeframe.multiplier == 60 or timeframe.multiplier == 240 or timeframe.isdaily

// === 获取时间级别字符串 ===
get_timeframe_str() =>
    if timeframe.isdaily
        "日线"
    else if timeframe.multiplier == 240
        "4H"
    else if timeframe.multiplier == 60
        "1H"
    else
        str.tostring(timeframe.multiplier) + timeframe.period

// === 绘制均线 ===
plot(is_valid_timeframe ? ema144 : na, color=color.new(color.red, 50), title="EMA 144")
plot(is_valid_timeframe ? ema169 : na, color=color.new(color.green, 50), title="EMA 169")
plot(is_valid_timeframe ? ema12 : na, color=color.new(color.blue, 0), title="EMA 12", linewidth=2)

// === 信号条件 ===
// 多头条件:EMA12 与 收盘价 均在通道上方
longCondition = (ema12 > ema144 and ema12 > ema169) and (close > ema144 and close > ema169) and is_valid_timeframe

// 空头条件:EMA12 与 收盘价 均在通道下方
shortCondition = (ema12 < ema144 and ema12 < ema169) and (close < ema144 and close < ema169) and is_valid_timeframe

// === 趋势状态检测(用于防止重复信号) ===
// 用一个变量保存前一根K线的趋势状态:1=多头,-1=空头,0=中性
var int trendState = 0

// 检测趋势切换
longSignal = longCondition and trendState != 1
shortSignal = shortCondition and trendState != -1

// 更新趋势状态
if longCondition
    trendState := 1
else if shortCondition
    trendState := -1
else
    trendState := trendState

// === 绘制信号箭头(仅首次出现) ===
plotshape(longSignal, title="多头信号", location=location.belowbar, color=color.new(#56f763, 0), style=shape.labelup, text="↑", size=size.tiny)
plotshape(shortSignal, title="空头信号", location=location.abovebar, color=color.new(#fa9696, 0), style=shape.labeldown, text="↓", size=size.tiny)

// === 右上角均线说明表格 ===
var table vegasTable = table.new(
     position.top_right,
     1,
     4,
     border_width=1,
     frame_width=1,
     bgcolor=color.new(color.black, 80))

if barstate.islast
    // 表头
    table.cell(
         vegasTable,
         0,
         0,
         "Vegas 通道",
         text_color=color.white,
         text_size=size.small,
         bgcolor=color.new(color.gray, 70))

    // EMA 12
    table.cell(
         vegasTable,
         0,
         1,
         "●  EMA " + str.tostring(ema12_length),
         text_color=color.blue,
         text_size=size.small,
         bgcolor=color.new(color.black, 85))

    // EMA 144
    table.cell(
         vegasTable,
         0,
         2,
         "●  EMA " + str.tostring(ema144_length),
         text_color=color.new(color.red, 0),
         text_size=size.small,
         bgcolor=color.new(color.black, 85))

    // EMA 169
    table.cell(
         vegasTable,
         0,
         3,
         "●  EMA " + str.tostring(ema169_length),
         text_color=color.new(color.green, 0),
         text_size=size.small,
         bgcolor=color.new(color.black, 85))

// === 预警设置(Discord Webhook 格式) ===
// 多头信号预警
alertcondition(longSignal, title="多头信号触发", message="{\"content\": \"🟢【{{interval}}】\\n代币: {{ticker}}\\n当前价格: {{close}}\\n状态: {{ticker}} 正在转向多头,在1h-4h择机开多\", \"username\": \"TradingView Alert Bot\"}")

// 空头信号预警
alertcondition(shortSignal, title="空头信号触发", message="{\"content\": \"🔴【{{interval}}】\\n代币: {{ticker}}\\n当前价格: {{close}}\\n状态: {{ticker}} 正在转向空头,在1h-4h择机开空\", \"username\": \"TradingView Alert Bot\"}")
返回指标库