[英]Pinescript - for loop with input variable
我將 tradingview 與 pinescript 4 一起使用。我想插入有關我使用的代碼的信息(時間、買入、賣出)。 當我 select 一個股票代碼時,腳本必須循環來驗證這個股票代碼是否有變量。 如果測試沒問題,我想通過替換“BuyAlertLevel”和“SellAlertLevel”來在我的腳本上使用這個變量(buy1 或 buy2,sold1 或 sold2)來畫線。
問題是“第 41 行:未聲明的標識符 'buy';第 42 行:未聲明的標識符 'sold'”
RSIPeriod = input(41, minval=1)
BuyAlertLevel = input(5, step=1, title="Buy Alert")
SellAlertLevel = input(15, step=1, title="Sell Alert")
RSIHistoModify = input(1.5, step=0.1, title="RSI Modify")
tickers1 = input(title="S", type=input.string, defval="PUST", group = "Suivi des Valeurs", inline = "1")
time1 =input(title="T", type=input.integer, defval=120, group = "Suivi des Valeurs", inline = "1")
buy1 =input(defval=0, title="B", type=input.integer, group = "Suivi des Valeurs", inline = "1")
sold1 =input(title="S", type=input.integer, defval=15, group = "Suivi des Valeurs", inline = "1")
tickers2 = input(title="S", type=input.string, defval="PANX", group = "Suivi des Valeurs", inline = "2")
time2 =input(title="T", type=input.integer, defval=120, group = "Suivi des Valeurs", inline = "2")
buy2 =input(title="B", type=input.integer, defval=0, group = "Suivi des Valeurs", inline = "2")
sold2 =input(title="S", type=input.integer, defval=15, group = "Suivi des Valeurs", inline = "2")
var tickers = (syminfo.ticker)
for int i = 1 to 2
if (tickers == tickers[i] and timeframe.multiplier == time[i])
BuyAlertLevel := buy[i]
SellAlertLevel := sold[i]
hline(0, "hline" ,color=color.purple, linestyle=hline.style_solid)
plot(BuyAlertLevel, color=color.green, style=plot.style_line)
plot(SellAlertLevel, color=color.red, style=plot.style_line)
謝謝
當圖表的符號與其匹配時,這將使用兩個符號之一的級別,否則它使用級別的輸入值:
//@version=4
study("")
RSIPeriod = input(41, minval=1)
i_BuyAlertLevel = input(5, step=1, title="Buy Alert")
i_SellAlertLevel = input(15, step=1, title="Sell Alert")
RSIHistoModify = input(1.5, step=0.1, title="RSI Modify")
tickers1 = input(title="S", type=input.string, defval="PUST", group = "Suivi des Valeurs", inline = "1")
time1 =input(title="T", type=input.integer, defval=120, group = "Suivi des Valeurs", inline = "1")
buy1 =input(defval=0, title="B", type=input.integer, group = "Suivi des Valeurs", inline = "1")
sold1 =input(title="S", type=input.integer, defval=15, group = "Suivi des Valeurs", inline = "1")
tickers2 = input(title="S", type=input.string, defval="PANX", group = "Suivi des Valeurs", inline = "2")
time2 =input(title="T", type=input.integer, defval=120, group = "Suivi des Valeurs", inline = "2")
buy2 =input(title="B", type=input.integer, defval=0, group = "Suivi des Valeurs", inline = "2")
sold2 =input(title="S", type=input.integer, defval=15, group = "Suivi des Valeurs", inline = "2")
var float BuyAlertLevel = syminfo.ticker == tickers1 ? buy1 : syminfo.ticker == tickers2 ? buy2 : i_BuyAlertLevel
var float SellAlertLevel = syminfo.ticker == tickers1 ? sold1 : syminfo.ticker == tickers2 ? sold2 : i_SellAlertLevel
hline(0, "hline" ,color=color.purple, linestyle=hline.style_solid)
plot(BuyAlertLevel, color=color.green, style=plot.style_line)
plot(SellAlertLevel, color=color.red, style=plot.style_line)
plot(close)
您將歷史引用運算符與 arrays 通常在其他語言中的索引方式混淆了。 有關Pine 中 arrays 的信息,請參閱此處的 usrman 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.