TradingView 如何在策略测试器中计算它们的Run-Up和?Drawdown更具体地说,我正在寻找公式,因为我读了下面的文章,但没有得到公式部分。
我正在尝试使用 Pine 脚本在 Tradingnview 中应用布林线。我已经计算了所有变量(简单移动平均线、上限和下限)并使用 1 天框架使用收盘价/开盘价,但是,我想实施一个依赖于该时间框架的策略,但在较低的分辨率,例如 1 小时的时间范围。基本上,我收到使用 1 天信息的触发器,并希望尽快执行订单。有人遇到过这个问题吗?
该脚本运行良好,但就性能而言,它不会删除过去的行,这意味着当屏幕上出现大量新蜡烛时,它可能会崩溃。这就是我正在努力解决的问题。
\n如何让它只显示3行并删除旧的?类似于下面的内容,但我不知道具体如何实现。我知道我必须用数组来做到这一点,但不知道如何做。
\nnumberOfLines = 3\n\nvar label[] lbls = array.new_label()\nvar line[] lns = array.new_line()\n\nif array.size(lns) > 0\n for i = 0 to array.size(lns) - 1\n if i > numberOfLines\n line.delete(array.remove(lns, i))\nRun Code Online (Sandbox Code Playgroud)\n//@version=5\nindicator("RSI Market Structure display only 10", overlay = true, max_bars_back = 500, max_lines_count = 500, max_labels_count = 500)\n\n// \xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94 Constants {\n// \xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94 Colors\nvar color GREEN = color.green\nvar color RED = color.red\nvar color BLUE = color.blue\nvar color YELLOW = color.yellow\n\n// \xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94 Constants used in inputs\nvar string …Run Code Online (Sandbox Code Playgroud) 看来我无法找出适合我的策略的正确脚本,如下所示:
\n在每日时间范围内效果更好,收到的信号更少,但更有效,脚本是这样的:
\n//@version=5\nstrategy("Estrategia Long Only")\n// Definir el indicador ADX\nlen = input(14, title="ADX Length")\nth = input(44, title="ADX Threshold")\nadx_val = ta.adx(high, low, close, len)\n// Definir el indicador RSI\nrsi_len = input(14, title="RSI Length")\nrsi_buy = input(20, title="RSI Buy Threshold")\nrsi_sell = input(35, title="RSI Sell Threshold")\nrsi_val = ta.rsi(close, rsi_len)\n// Generar se\xc3\xb1ales de compra\nadx_above_th = adx_val > th\nrsi_above_buy = rsi_val >= rsi_buy and rsi_val < rsi_sell\nbuy_signal = adx_above_th and rsi_above_buy\n// Entradas largas\nif buy_signal\n …Run Code Online (Sandbox Code Playgroud) algorithmic-trading tradingview-api pine-script pine-script-v5
我的指标看起来不像 TradingView 的内置随机 RSI 指标。我怎样才能获得熟悉的外观,以复制 st-RSI 指标?
这是显示我的代码和 TradingView 指标之间差异的屏幕截图
//@version=3
study("Stoch-RSI")
//smooth = (close + close[1] + close[2]) /3
smooth = close
p_k = stoch(rsi(smooth,14),high,low,14)
p_d = 0.0
for i = 1 to 3
p_d := p_d + p_k[i]
p_d := p_d / 3
plot(p_k*30,color=orange)
plot(p_d*30,color=purple)
plot(close)
Run Code Online (Sandbox Code Playgroud)
曲线应该与交易视图指标相同
直方图未声明的标识符
我只是初学者写一个松树脚本
study("My Hong")
spread = high - low
vsa = volume / spread
plot(vsa , style=histogram)
Run Code Online (Sandbox Code Playgroud)
我认为其他人有与我类似的脚本,但为什么我的脚本有未声明的直方图标识符
我只想在输入为真时绘制一些 EMA。但是,当我使用 if 函数时,它显示“无法在本地范围内使用‘plot’”。
//@version=4
study(title = "Todos os indicadores", overlay = true)
showemas = input(false, title = "Show EMAs")
if showemas == true
plot(ema(close, length1), color=#F44336, linewidth=2, title="EMA 1")
plot(ema(close, length2), color=#4CAF50, linewidth=2, title="EMA 1")
plot(ema(close, length3), color=#673AB7, linewidth=2, title="EMA 1")
plot(ema(close, length4), color=#2196F3, linewidth=2, title="EMA 1")
plot(ema(close, length5), color=color.white, linewidth=2, title="EMA 1")
plot(sma(close, length6), color=color.orange, linewidth=2, title="EMA 1")Run Code Online (Sandbox Code Playgroud)
我正在制定一种策略,该策略要求我在收到当前蜡烛关闭信号时检查是否有特定的交叉几根蜡烛回到过去。
现在我基本上为每根蜡烛创建 10 个变量,因为我想检查 10 根蜡烛,看看是否发生了交叉(任何类型的交叉都适用于这个例子)。
这有效,但会导致一些混乱和冗长的代码,所以我想知道我是否可以以某种方式创建一个“单行”解决方案来检查整个期间的情况?
外汇股票可能有五位小数点,如 EURUSD 1.22189 另一种可能有两位小数点,如比特币/美元,如 40102.16
我想要小数点后的位数,即 EURUSD 中的 5 位数字和 BITCOIN/USD 示例中的 2 位数字。
我如何在 Pinescript 中实现这一目标?