我正在尝试计算我在 Tradingview 中查看的加密货币的美元价值。一个例子是 ETHBTC。该脚本的目的是确定图表的货币 (BTC),然后查找 BTCUSD,例如得到 $40 000 的结果。但是,当正在查看的图表是 BTCUSD 时,脚本需要适应这种情况。在这种情况下,货币是美元,因此美元的价值应该是 1 美元。该脚本试图实现这一点:
//@version=5
indicator("My Script")
//Looking up the currency of current graph, ie ETHBTC or example 2, BTCUSD
theCurrency = syminfo.currency // returns BTC or example 2 USD
theSymbol = theCurrency + "USD" // creates BTCUSD or incorrectly USDUSD
curUSDValue = 1.0
if (theSymbol == "USDUSD")
curUSDValue := 1.0 //accomodate use case where currrecny is already USD
else
curUSDValue := request.security(theSymbol, 'D', close) //looks up price for BTCUSD
plot(curUSDValue)
Pinescript 不允许在 if / 条件语句中查找安全性,因为上面的脚本返回此错误:
无法在“if”、“switch”或“for”中调用“request.*()”函数
有关如何解决此 Pinescript 限制的任何建议?