OPEN-SOURCE SCRIPT
Telah dikemas kini 选股器:智能货币突破通道 [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]
Nota Keluaran
//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")
// }
Skrip sumber terbuka
Dalam semangat sebenar TradingView, pencipta skrip ini telah menjadikannya sumber terbuka supaya pedagang dapat menilai dan mengesahkan kefungsiannya. Terima kasih kepada penulis! Walaupun anda boleh menggunakannya secara percuma, ingat bahawa menerbitkan semula kod ini adalah tertakluk kepada Peraturan Dalaman kami.
Penafian
Maklumat dan penerbitan adalah tidak dimaksudkan untuk menjadi, dan tidak membentuk, nasihat untuk kewangan, pelaburan, perdagangan dan jenis-jenis lain atau cadangan yang dibekalkan atau disahkan oleh TradingView. Baca dengan lebih lanjut di Terma Penggunaan.
Skrip sumber terbuka
Dalam semangat sebenar TradingView, pencipta skrip ini telah menjadikannya sumber terbuka supaya pedagang dapat menilai dan mengesahkan kefungsiannya. Terima kasih kepada penulis! Walaupun anda boleh menggunakannya secara percuma, ingat bahawa menerbitkan semula kod ini adalah tertakluk kepada Peraturan Dalaman kami.
Penafian
Maklumat dan penerbitan adalah tidak dimaksudkan untuk menjadi, dan tidak membentuk, nasihat untuk kewangan, pelaburan, perdagangan dan jenis-jenis lain atau cadangan yang dibekalkan atau disahkan oleh TradingView. Baca dengan lebih lanjut di Terma Penggunaan.