You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在TradingView Widget中为多条指数移动平均线设置不同颜色

如何在TradingView Widget中为多条指数移动平均线设置不同颜色

嗨,我看你已经尝试通过添加style属性来修改EMA的颜色了,这个思路完全没问题!问题大概率是出在style对象的参数配置细节上,咱们直接来调整代码解决这个问题:

function LoadCharts() {
    let symbol = document.getElementById('pairs').value;

    const symbols = ['BTCUSDT.P', 'ETHUSDT.P', 'BCHUSDT.P', 'XRPUSDT.P', 'LTCUSDT.P', 'TRXUSDT.P', 'ETCUSDT.P', 'LINKUSDT.P', 'XLMUSDT.P',
              'ADAUSDT.P', 'XMRUSDT.P', 'DASHUSDT.P', 'ZECUSDT.P', 'BNBUSDT.P', 'ATOMUSDT.P', 'VETUSDT.P', 'NEOUSDT.P', 'QTUMUSDT.P',
              'IOSTUSDT.P', 'THETAUSDT.P', 'KNCUSDT.P', 'ZRXUSDT.P', 'COMPUSDT.P', 'OMGUSDT.P', 'DOGEUSDT.P', 'SXPUSDT.P', 'KAVAUSDT.P',
              'BANDUSDT.P', 'RLCUSDT.P', 'MKRUSDT.P', 'DOTUSDT.P', 'DEFIUSDT.P', 'YFIUSDT.P', 'BALUSDT.P', 'TRBUSDT.P',
              'RUNEUSDT.P', 'SUSHIUSDT.P', 'EGLDUSDT.P', 'SOLUSDT.P', 'STORJUSDT.P', 'BLZUSDT.P', 'UNIUSDT.P', 'AVAXUSDT.P', 'FTMUSDT.P',
              'ENJUSDT.P', 'KSMUSDT.P', 'NEARUSDT.P', 'AAVEUSDT.P', 'FILUSDT.P', 'RSRUSDT.P'];

    for (let i = 0; i < 1; i++) {
        setTimeout(function() {
            var widget = window.tvWidget = new TradingView.widget({
                "width": chartWidth,
                "height": chartHeight,
                "symbol": "BINANCE:" + symbols[i % symbols.length],
                "interval": "5",
                "timezone": "Asia/Kolkata",
                "hide_side_toolbar": false,
                "hide_volume": false,
                "theme": "Dark",
                "style": "1",
                "locale": "out",
                "toolbar_bg": "#f1f3f6",
                "enable_publishing": false,
                "allow_symbol_change": true,
                "details": true,
                "container_id": 'tvchart' + i,
                "studies": [
                    // 7周期EMA - 黄色
                    {
                        id: "MAExp@tv-basicstudies",
                        inputs: {length: 7},
                        style: {
                            color: "#FFFF00",
                            linewidth: 2 // 可选:调整线宽让不同EMA更易区分
                        }
                    },
                    // 25周期EMA - 蓝色
                    {
                        id: "MAExp@tv-basicstudies",
                        inputs: {length: 25},
                        style: {
                            color: "#0000FF",
                            linewidth: 2
                        }
                    },
                    // 99周期EMA - 绿色
                    {
                        id: "MAExp@tv-basicstudies",
                        inputs: {length: 99},
                        style: {
                            color: "#00FF00",
                            linewidth: 2
                        }
                    }
                ],
            });
        }, i * 2000);
    }
}

这里有几个需要注意的细节:

  • 每条EMA都要作为studies数组的独立元素配置,各自拥有完整的id、inputs和style属性
  • style里的color支持所有CSS合法的颜色格式,比如十六进制码、RGB值、颜色名称都可以
  • 额外添加linewidth参数能让不同周期的EMA在图表上辨识度更高
  • 如果你之前的代码没生效,可能是转义引号(&quot;)的语法问题,实际代码里要使用正常的双引号/单引号

备注:内容来源于stack exchange,提问作者amj glazing

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 17:30:30