更新时间:2023-12-04 22:46:16
这是一种方法.
我已经包含了两种方法:
Here's a way to do it.
I've included 2 methods:
f_fill_array_all_tickers()
该脚本有一个输入复选框 i_fill_array_all_tickers
可让您在 2 种方法之间进行选择.
The script has an input checkbox i_fill_array_all_tickers
to let you choose between the 2 methods.
由于可读性/可维护性,我个人会选择 f_fill_array_all_tickers()
.
I'd personally go for f_fill_array_all_tickers()
because of readability/maintainability.
//@version=4
study("Lines", "LI", true)
var bool i_fill_array_all_tickers = input(false, "Fill array with ALL tickers")
var string[] a_ticker = array.new_string()
var int[] a_x1 = array.new_int()
var int[] a_x2 = array.new_int()
var line myLine = line.new(na, na, na, na, extend=extend.both)
f_add(_ticker, _x1, _x2) =>
if array.includes(a_ticker, _ticker)
// update existing ticker
idx = array.indexof(a_ticker, _ticker)
array.set(a_x1, idx, _x1)
array.set(a_x2, idx, _x2)
else
// insert new ticker
array.push(a_ticker, _ticker)
array.push(a_x1, _x1)
array.push(a_x2, _x2)
f_fill_array_all_tickers() =>
//fill array with data for ALL tickers
f_add("AAPL", 20, 6)
f_add("MSFT", 20, 6)
f_add("OPEN", 20, 6)
f_add("SPY" , 20, 6)
f_fill_array_current_ticker_only() =>
//fill array with data for only the CURRENT tickers
if syminfo.ticker == "AAPL"
f_add(syminfo.ticker, 20, 6)
else if syminfo.ticker == "MSFT"
f_add(syminfo.ticker, 20, 6)
else if syminfo.ticker == "OPEN"
f_add(syminfo.ticker, 20, 6)
else if syminfo.ticker == "MSFT"
f_add(syminfo.ticker, 20, 6)
f_fill_array() =>
if i_fill_array_all_tickers
f_fill_array_all_tickers()
else
f_fill_array_current_ticker_only()
if barstate.isfirst
f_fill_array()
if barstate.islast and array.includes(a_ticker, syminfo.ticker)
idx = array.indexof(a_ticker, syminfo.ticker)
x1 = array.get(a_x1, idx)
x2 = array.get(a_x2, idx)
line.set_xy1(myLine, bar_index - x1, high[x1])
line.set_xy2(myLine, bar_index - x2, high)
最小化代码
//@version=4
study("Lines", "LI", true)
var a_ticker = array.new_string()
var a_x1 = array.new_int()
var a_x2 = array.new_int()
var myLine = line.new(na, na, na, na, extend=extend.both)
ai(a,v) => array.includes(a,v)
ax(a,v) => array.indexof(a,v)
as(a,i,v) => array.set(a,i,v)
ag(a,i) => array.get(a,i)
ap(a,v) => array.push(a,v)
f(t,a,b) =>
if ai(a_ticker,t)
i = ax(a_ticker,t),as(a_x1,i,a),as(a_x2,i,b)
else
ap(a_ticker,t),ap(a_x1,a),ap(a_x2,b)
a() => f("AAPL",20,6),f("MSFT",20,6),f("OPEN",20,6),f("SPY",20,6)
if barstate.isfirst
a()
if barstate.islast and ai(a_ticker, syminfo.ticker)
idx = ax(a_ticker, syminfo.ticker)
x1 = ag(a_x1, idx)
x2 = ag(a_x2, idx)
line.set_xy1(myLine, bar_index - x1, high[x1])
line.set_xy2(myLine, bar_index - x2, high)
这似乎有效,10 行,每行 100 个元素
This seems to work, with 10 lines of 100 elements each
//@version=4
study("Lines", "LI", true)
var a_ticker = array.new_string()
var a_x1 = array.new_int()
var a_x2 = array.new_int()
var myLine = line.new(na, na, na, na, extend=extend.both)
ai(a,v) => array.includes(a,v)
ax(a,v) => array.indexof(a,v)
as(a,i,v) => array.set(a,i,v)
ag(a,i) => array.get(a,i)
ap(a,v) => array.push(a,v)
f(t,a,b) =>
if ai(a_ticker,t)
i = ax(a_ticker,t),as(a_x1,i,a),as(a_x2,i,b)
else
ap(a_ticker,t),ap(a_x1,a),ap(a_x2,b)
a() =>
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),
f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6),f("AAPL",20,6)
if barstate.isfirst
a()
if barstate.islast and ai(a_ticker, syminfo.ticker)
idx = ax(a_ticker, syminfo.ticker)
x1 = ag(a_x1, idx)
x2 = ag(a_x2, idx)
line.set_xy1(myLine, bar_index - x1, high[x1])
line.set_xy2(myLine, bar_index - x2, high)
小改进.
当在最后一个柱上调用 a()
而不是 barstate.isfirst
时,运行时不必将所有历史柱上的数组保存在内存中.
Little improvement.
When calling a()
on the last bar instead of barstate.isfirst
, the runtime doesn't have to keep the arrays in memory on all the historical bars.
if barstate.islast
a()
if ai(a_ticker, syminfo.ticker)
idx = ax(a_ticker, syminfo.ticker)
x1 = ag(a_x1, idx)
x2 = ag(a_x2, idx)
line.set_xy1(myLine, bar_index - x1, high[x1])
line.set_xy2(myLine, bar_index - x2, high)