OPEN-SOURCE SCRIPT
Atualizado 选股器:智能货币突破通道 [AlgoAlpha]

Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]Stock Picker: Smart Money Breakout Channel [AlgoAlpha]Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Stock Picker: Smart Money Breakout Channel [AlgoAlpha]Stock Picker: Smart Money Breakout Channel [AlgoAlpha]Stock Picker: Smart Money Breakout Channel [AlgoAlpha]
Notas de Lançamento
//version=5// © BigBeluga
// This work is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International
// creativecommons.org/licenses/by-nc-sa/4.0/
// Modified into a screener-friendly indicator.
indicator("Logarithmic Regression Screener Indicator [BigBeluga Mod]", "LogReg Screener Ind [BigBeluga Mod]", overlay=false)
// INPUTS ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――{
int length = input.int(100, "Lookback Period", group = "Parameters")
string screener_type = input.string("Log Regression Channel", "Screener Type", options = ["Log Regression Channel", "Logarithmic Regression"], group = "Screener Settings")
// }
// CALCULATIONS――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――{
// Function to compute logarithmic regression
f_log_regression(src, length) =>
float sumX = 0.0
float sumY = 0.0
float sumXSqr = 0.0
float sumXY = 0.0
for i = 0 to length - 1
val = math.log(src)
per = i + 1.0
sumX += per
sumY += val
sumXSqr += per * per
sumXY += val * per
slope = (length * sumXY - sumX * sumY) / (length * sumXSqr - sumX * sumX)
average = sumY / length
intercept = average - slope * sumX / length + slope
[slope, intercept]
// Calculate slope and intercept
[slope, intercept] = f_log_regression(close, length)
float start = math.exp(intercept + slope * length)
float end = math.exp(intercept)
// }
// SCREENING LOGIC ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――{
// --- Define conditions ---
bool logChannelUp = end > start
bool logChannelDown = end < start
bool logTrendUp = end > end[3]
bool logTrendDown = end < end[3]
// --- Determine the final signal based on user input ---
int screener_signal = 0 // Default to 0 (Neutral)
if screener_type == "Log Regression Channel"
if logChannelUp
screener_signal := 1
else if logChannelDown
screener_signal := -1
else if screener_type == "Logarithmic Regression"
if logTrendUp
screener_signal := 1
else if logTrendDown
screener_signal := -1
// }
// OUTPUT & VISUALS ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――{
// Plot the signal for the screener to read. display.none hides it from the chart pane.
plot(screener_signal, "Screener Signal", display = display.none)
// --- Visual Confirmation on Chart ---
// Use background color to show the current state on the chart.
bgcolor(screener_signal == 1 ? color.new(color.green, 80) : screener_signal == -1 ? color.new(color.red, 80) : na, title="Signal Background")
// Plot a simplified visual representation in its own pane
plot(screener_signal, "Signal", style=plot.style_columns, color=(screener_signal == 1 ? color.green : screener_signal == -1 ? color.red : color.gray))
// --- Alerts ---
alertcondition(screener_signal == 1, title="Signal UP", message="{{ticker}}: {{screener_type}} signal is UP")
alertcondition(screener_signal == -1, title="Signal DOWN", message="{{ticker}}: {{screener_type}} signal is DOWN")
// }
Script de código aberto
No verdadeiro espirito do TradingView, o autor desse script o publicou como código aberto, para que os traders possam entendê-lo e verificá-lo. Parabéns ao autor Você pode usá-lo gratuitamente, mas a reutilização desse código em publicações e regida pelas Regras da Casa.
Aviso legal
As informações e publicações não devem ser e não constituem conselhos ou recomendações financeiras, de investimento, de negociação ou de qualquer outro tipo, fornecidas ou endossadas pela TradingView. Leia mais em Termos de uso.
Script de código aberto
No verdadeiro espirito do TradingView, o autor desse script o publicou como código aberto, para que os traders possam entendê-lo e verificá-lo. Parabéns ao autor Você pode usá-lo gratuitamente, mas a reutilização desse código em publicações e regida pelas Regras da Casa.
Aviso legal
As informações e publicações não devem ser e não constituem conselhos ou recomendações financeiras, de investimento, de negociação ou de qualquer outro tipo, fornecidas ou endossadas pela TradingView. Leia mais em Termos de uso.