Zero Lag Trend Signals (MTF) [Adee]its my hidden strategy this indicator accuracy 90 percent work on ema strategy
Corak carta
Machine Learning + EMA StrategyMachine Learning + EMA Strategy (kNN Algorithm)
📌 Overview
This strategy combines Exponential Moving Averages (EMA) with a Machine Learning-based k-Nearest Neighbors (kNN) algorithm to enhance trade accuracy. It dynamically adjusts entry and exit points based on market trends and historical price action.
🛠️ How It Works
✅ Uses 9 EMAs (8, 14, 20, 26, 32, 38, 44, 50, 200) to identify trends.
✅ Employs kNN (k-Nearest Neighbors) classification to predict price movement.
✅ Auto-closes previous trades before opening a new one to prevent overlap.
✅ Plots a real-time prediction indicator to visualize market conditions.
🎯 Trade Logic
🔵 Buy Signal → When EMA 8 crosses above EMA 50, and the kNN prediction is positive.
🔴 Sell Signal → When EMA 8 crosses below EMA 50, and the kNN prediction is negative.
🚀 Why Use This Strategy?
✅ Machine Learning-Powered: Uses kNN for data-driven decisions.
✅ Trend-Following & Adaptive: EMAs filter out market noise.
✅ Automatic Position Management: No overlapping trades.
✅ Customizable Parameters: Suitable for multiple asset classes.
⚠️ Disclaimer
This strategy is for educational purposes only and should be backtested before live trading. Past performance does not guarantee future results.
AIOSEMA
keltner
ichimoku cloud
watson envelope
i recommend building the strategy around 100 and 200 ema lines on higher time frames (1-12h)
keltner channel is really strong on 12h timeframe for top/bottom rejections, but can be used to see trend (sticking to the bottom for downtrend and denying middle > bearish and vice versa)
ichimoku cloud can be used for determining general sentiment on HTF like 12h-1w, 30/27min to 12h for rejection points
watson envelope is mostly just entry tool but i have been on&off using it as it seems misleading at times, use only with confluence
Явные сигналы для BTC и альткоинов Alexeyluxявный сигнал для покупок и продаж высоколикивдных криптоактивов хорошо работая на часовом тф, на недельном хорошо показывает продажи, ловит максимумы в том числе.
NeoWave cash data by MikhepoolThe NeoWave Chart: indicator is a technical analysis tool designed to visualize significant price movements by drawing dynamic lines between key highs and lows on the chart. Using a user-defined resolution, the indicator identifies new bars and connects the highest high and lowest low within each segment, updating the lines in real-time as new data becomes available. All lines are rendered in black, providing a clean and consistent visual representation of price action without color-coded directional bias. This tool is particularly useful for traders and analysts employing NeoWave theory or similar methodologies, as it helps identify structural patterns and trends in the market.
VWAP//@version=5
indicator(title="VWAP", shorttitle="VWAP", overlay=true)
// Calculate VWAP
price = (high + low + close) / 3
pv = price * volume
cumulativePV = ta.cum(pv)
cumulativeVolume = ta.cum(volume)
vwap = cumulativePV / cumulativeVolume
// Plot VWAP
plot(vwap, color=color.blue, linewidth=2, title="VWAP")
// Example: Display bullish/bearish signals (basic)
isBullish = close > vwap
isBearish = close < vwap
plotshape(isBullish, style=shape.triangleup, color=color.green, size=size.tiny, location=location.bottom, title="Bullish Signal")
plotshape(isBearish, style=shape.triangledown, color=color.red, size=size.tiny, location=location.top, title="Bearish Signal")
//Alerts
alertcondition(ta.crossover(close,vwap),"Price crossing above VWAP","Price crossing above VWAP")
alertcondition(ta.crossunder(close,vwap),"Price crossing below VWAP","Price crossing below VWAP")
Multi-Timeframe RSI Strategy
Dưới đây là code cho bản tradingvie ngôn ngữ lập trình Pine Script V5:
Gọi:
A-Các đặt về khung thời gian :
1/Khung thời gian đang được chọn , đang chạy là : Timeframe 0 = TF0
2/Khung thời gian sẽ được cấu hình mặc đình là khung 5 phút (khung này có thể được cấu hình thay đổi ) là : Timeframe 1 = TF1
3/Khung thời gian sẽ được cấu hình mặc đình là khung 15 phút (khung này có thể được cấu hình thay đổi ) là : Timeframe 2 = TF2
B-Các thông số được tính toán là:
1/ thông số của khung TF0: RSI14, EMA9 (của RSI14 của khung thời gian TF0) , WMA45 (của RSI14 của khung thời gian TF0)
2/ thông số của khung TF1: RSI14, EMA9 (của RSI14 của khung thời gian TF1), WMA45 (của RSI14 của khung thời gian TF1)
3/ thông số của khung TF1: RSI14, EMA9 (của RSI14 của khung thời gian TF2), WMA45 (của RSI14 của khung thời gian TF2)
Quarterly EMA StrategyThis strategy is designed for quarterly swing trading in Indian stock futures (Top 50 liquid stocks). It focuses on pullbacks to key EMAs (10 & 21) with RSI confirmation to capture high-probability long trades. The goal is to generate consistent profits with a structured entry, exit, and stop-loss system while minimizing risk.
⸻
🎯 Core Trading Logic
1️⃣ Only trades in the Top 50 NSE Futures stocks for liquidity.
2️⃣ Entry: When the quarterly candle pulls back to the 10 EMA or 21 EMA, and RSI is below 40.
3️⃣ Exit Rules:
• Quick Exit: If the stock gains 8-10% in a single day, exit immediately.
• EMA Separation Exit: If the stock moves too far from 10 EMA on the daily chart, exit and re-enter later.
4️⃣ Stop Loss:
• If the gap between 10 EMA & 21 EMA is large, a 15% stop-loss is placed below the moving average.
5️⃣ Re-entry Strategy: If exited early, re-enter on daily pullback to the 10 EMA when price stabilizes.
⸻
📊 Trading Edge & Benefits
✅ Combines Technical & Fundamental Strength – Focuses on strong stocks that pull back for a better entry.
✅ Uses EMAs for Trend Confirmation – Ensures the stock is still bullish before entering.
✅ RSI Confirmation – Avoids chasing stocks by entering at logical retracements.
✅ Risk Management Built-In – Uses dynamic stop-loss and exit triggers to protect capital.
✅ Quarterly Structure – Provides a low-effort, high-accuracy trading approach for high conviction trades.
⸻
🛠️ How to Use This Strategy on TradingView?
1️⃣ Apply the script to TradingView by copying and pasting it into the Pine Script Editor.
2️⃣ Set Alerts for Entries & Exits – Get notified when a trade is triggered.
3️⃣ Use with NSE Futures – Stick to the Top 50 futures stocks for best results.
4️⃣ Monitor Daily Charts – Exit manually if price moves away too fast from the 10 EMA.
5️⃣ Backtest & Adjust Risk – Customize SL and profit targets based on your risk appetite.
⸻
🚀 Profit Potential & Expectations
🔹 Target: ₹1.25 lakh per stock per quarter using this strategy.
🔹 Works best with large-cap, high-volume futures stocks.
🔹 Expected win rate: 65-75% (based on backtests).
🔹 Requires discipline & patience to wait for ideal setups.
EMA 200 + Daily/Weekly/Monthly CPR & Camarilla PivotsAdding Camarilla to CPR with 200 EMA
Camarilla and CPR at same level for support and entering swing trades
RSI 50% planZ
RSI Settings:
RSI Length: The Relative Strength Index (RSI) is calculated using the specified length. In this code, the value 89 is set as the RSI length.
Level 50: Level 50 is considered a neutral level, representing a balance of momentum between bullish and bearish trends.
Buy and Sell Conditions:
Buy Signal: A buy signal is generated when the RSI crosses from below to above level 50.
Sell Signal: A sell signal is generated when the RSI crosses from above to below level 50.
Drawing on the Candle:
When a buy or sell signal occurs, a box is drawn around the candle that represents the signal.
A line is extended through the middle of the candle between the high and low values. This line is drawn through the midpoint of the candle to highlight the position.
Background Color Change:
The background color of the chart is changed based on the signal:
Green for a buy signal.
Red for a sell signal.
How the Indicator Works:
RSI is calculated using the 89-period length, and it watches for a crossover of the 50 level:
If RSI crosses above 50 from below, a buy signal is plotted below the candle.
If RSI crosses below 50 from above, a sell signal is plotted above the candle.
A box is drawn around the candle with the signal, and a line is extended across the middle of the candle to highlight the position.
The background of the chart changes based on the signal (green for buy, red for sell).
Adjustable Features:
You can adjust the RSI Length in the indicator settings to change the period for RSI calculation.
Usage:
This indicator is useful for identifying momentum shifts in the market.
Traders or investors can use it to determine buy and sell points based on RSI crossovers.
Indicateur Pro - Curseurs sur le graphiqueEL BAHANI indicateur qui te permet de voir des signaux visuels de BUY et SELL basés sur les croisements d'EMAs, les conditions du RSI, et la position du prix par rapport au VWAP
TRH Backtest SMA ATR Variable RRThis strategy is a trend-following strategy that uses three Simple Moving Averages (SMAs) and the RSI indicator to identify entry and exit points. It also incorporates a dynamic risk-reward ratio based on specific conditions.
Here's a breakdown of the strategy's components and logic:
SMAs: The strategy uses three SMAs with periods of 7, 25, and 99. These SMAs help to identify the overall trend of the market.
RSI: The RSI is a momentum indicator that measures the magnitude of recent price changes to evaluate overbought or oversold conditions in the price of a stock or other asset.2 In this strategy, it's used to determine stop-loss levels
Mk Thick Bars# MK Thick Bars
A clean, professional bar chart indicator with customizable moving averages inspired by professional charting platforms.
## Features
### Custom Bars
• Full-body bars for clear price action visualization
• Left tick marks to indicate closing prices
• Customizable colors for bullish and bearish bars
• Adjustable transparency
• Option to color based on close vs. open or close vs. previous close
### Moving Averages
• 10 EMA (Exponential Moving Average)
• 21 EMA (Exponential Moving Average)
• 50 SMA (Simple Moving Average)
• 200 SMA (Simple Moving Average)
• Individual toggle and color customization for each MA
## How to Use
1. Add the indicator to your chart
2. Customize appearance in settings:
- Toggle custom bars and left tick
- Adjust transparency
- Customize colors
- Enable/disable specific moving averages
## Benefits
• Reduced visual noise compared to traditional candlesticks
• Clear trend identification with customizable moving averages
• Professional appearance similar to institutional trading platforms
• Works on all timeframes and instruments
BTC Advanced AnalysisEste script combina la EMA de 50 y 200 períodos, el RSI y el MACD para proporcionar señales de compra y venta. También destaca cruces alcistas y bajistas en las EMAs y sobrecompra/sobreventa en el RSI.
Seasonality Monthly v2.0//@version=5
indicator("Seasonality Monthly v2.0", "Seasonality Monthly v2.0", format = format.volume)
if not timeframe.ismonthly and not timeframe.isdaily
runtime.error("Please switch timeframe to either Daily or Monthly")
i_year_start = input(2000, "Start Year")
// i_method = input.string("time", "Method", options= )
i_method = "time_close"
i_text_size = input.string(size.auto, "Text Size", )
//--------------------------------------------------------Functions----------------------------------------------------
f_array_stats(array_) =>
count_pos_ = 0
count_neg_= 0
count_ = 0
sum_ = 0.0
if not na(array_) and array.size(array_) > 0
for i_ = 0 to array.size(array_) - 1
elem_ = array.get(array_, i_)
if not na(elem_)
sum_ += elem_
count_ += 1
switch
elem_ > 0 => count_pos_ += 1
elem_ < 0 => count_neg_ += 1
avg_ = count_ > 0 ? sum_ / count_ : 0.0
//-------------------------------------------------------------------------------------------------------------------
= request.security(syminfo.tickerid, "M", [year(time_close), month(time_close), nz(close/close -1)], gaps = barmerge.gaps_on, lookahead = barmerge.lookahead_on )
// month_ = switch i_method
// "time" => month(time)
// "time_close" => month(time_close)
// year_ = switch i_method
// "time" => year(time)
// "time_close" => year(time_close)
var year_start_ = math.max(year_, i_year_start)
var no_years_ = year(timenow) - year_start_ + 1
var matrix data_ = matrix.new(no_years_,13,na)
var table table_ = na
var text_color_ = color.white
var bg_color_ = color.gray
// chg_pct_ = nz(close/close -1)
if year_ >= year_start_
// log.info(str.format("Time {0} Year {1} Month {2} ChgPct {3,number,#.##%}", str.format_time(time_close), year_, month_, chg_pct_))
cur_val_ = nz(matrix.get(data_, year_-year_start_, month_-1))
matrix.set(data_, year_-year_start_, month_-1, cur_val_ + chg_pct_)
// if barstate.islast
// log.info("ROWS {0}", no_years_ + 7 )
if barstate.islast
table_ := table.new(position.middle_center, 13, no_years_ + 7, border_width = 1)
// log.info("ROWS {0}", year_ - year_start_ + 7 )
table.cell(table_, 0, 0, str.format("Seasonality Monthly Performance - {0}:{1}", syminfo.prefix, syminfo.ticker), text_color = text_color_, bgcolor = color.blue, text_size = i_text_size)
table.merge_cells(table_, 0,0,12,0)
row = 1
table.cell(table_, 0, row, "Year", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 1, row, "Jan", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 2, row, "Feb", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 3, row, "Mar", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 4, row, "Apr", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 5, row, "May", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 6, row, "Jun", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 7, row, "Jul", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 8, row, "Aug", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 9, row, "Sep", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 10, row, "Oct", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 11, row, "Nov", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 12, row, "Dec", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
for row_ = 0 to no_years_ - 1
table.cell(table_, 0, 2+row_, str.tostring(row_ + year_start_), text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
for col_ = 0 to 11
val_ = nz(matrix.get(data_, row_, col_),0.0)
val_color_ = val_ > 0.0 ? color.green : val_ < 0.0 ? color.red : color.gray
table.cell(table_, 1+col_, 2+row_, str.format("{0,number,###.##%}", val_), bgcolor = color.new(val_color_,80), text_color = val_color_, text_size = i_text_size)
true
//Aggregates
row_ = no_years_ + 2
table.cell(table_, 0, row_, "AVG", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 0, row_+1, "SUM", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 0, row_+2, "+ive", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
table.cell(table_, 0, row_+3, "WR", text_color = text_color_, bgcolor = bg_color_, text_size = i_text_size)
for col_ = 0 to 11
arr_ = matrix.col(data_, col_)
// val_ = array.sum(arr_)
= f_array_stats(arr_)
val_color_ = sum_ > 0 ? color.green : sum_ < 0 ? color.red : color.gray
table.cell(table_, 1+col_, row_, str.format("{0,number,###.##%}", avg_), bgcolor = color.new(val_color_,50), text_color = val_color_, text_size = i_text_size)
table.cell(table_, 1+col_, row_+1, str.format("{0,number,###.##%}", sum_), bgcolor = color.new(val_color_,50), text_color = val_color_, text_size = i_text_size)
table.cell(table_, 1+col_, row_+2, str.format("{0}/{1}", count_pos_, count_), bgcolor = color.new(val_color_,50), text_color = color.new(color.white, 50), text_size = i_text_size)
table.cell(table_, 1+col_, row_+3, str.format("{0,number,#.##%}", count_pos_/count_), bgcolor = color.new(val_color_,50), text_color = color.new(color.white, 50), text_size = i_text_size)
true
AlgoForensic TDI - Traders Dynamic IndexAlgoForensic TDI - Traders Dynamic Index
> Measure the Exhaustion and Divergence in the market
> RSI Divergence alerts
> Hidden Divergence alerts
Strategia MA a Tre Linee - Timeframe 3 Minuti con FiltriStrategia MA a Tre Linee con Filtri (3 Minuti) è un'evoluzione della versione base, con aggiunta di filtri avanzati e gestione dinamica dello stop loss. Ecco i componenti chiave:
1. Logica di Entrata
Long:
Triplo crossover ascendente: MA 9 > MA 21 > MA 50 (allineamento progressivo).
Filtro Volume: Volume corrente > media mobile 20 periodi del volume.
Filtro Volatilità: Deviazione standard dei prezzi > 1.5x la sua media mobile (evita mercati "piatti").
Short:
Triplo crossover discendente: MA 9 < MA 21 < MA 50.
Stessi filtri di volume e volatilità del long.
2. Gestione Uscite
Take Profit Fisso: 2% dal prezzo d'entrata.
Stop Loss Dinamico:
Inizialmente fissato all'1% dal prezzo d'entrata.
Trailing stop: Si sposta al 50% dello SL originale (0.5%) se il prezzo si muove a favore, bloccando parte dei profitti.
Esempio Long: Se il prezzo sale, lo SL si alza progressivamente (ma non si abbassa mai).
Jitesh-jain-Ultimate-Silver//@version=6
indicator('Jitesh-jain-Ultimate-Silver', overlay = true)
// Define the 200 EMA
ema200 = ta.ema(close, 200)
// Create an input for the threshold value, allowing manual adjustment
threshold = input.int(150, title="Proximity Threshold", minval=1)
// Condition for Green Alert (Candle close is near and above the EMA)
greenCondition = close >= ema200 - threshold and close <= ema200 + threshold
// Condition for Red Alert (Candle close is near and below the EMA)
redCondition = close >= ema200 - threshold and close <= ema200 + threshold
// Define the RSI length
rsiLength = 50
// Get RSI from Daily and 4-Hour Timeframes using `request.security`
rsiDaily = request.security(syminfo.tickerid, 'D', ta.rsi(close, rsiLength))
rsi4H = request.security(syminfo.tickerid, '240', ta.rsi(close, rsiLength))
// Calculate RSI for the current timeframe
rsiCurrent = ta.rsi(close, rsiLength)
// Define an SMA period for the RSI
smaRSILength = 14 // You can adjust this length
smaRSI = ta.sma(rsiCurrent, smaRSILength) // Calculate the SMA of the current RSI
// Define Big Volume Condition
length = 20 // Look-back period for average volume
avgVolume = ta.sma(volume, length) // Average volume over 'length' periods
bigVolumeCondition = volume > avgVolume * 2 // Big volume is 2x the average volume
// Plot the EMA on the chart
plot(ema200, color = color.blue, linewidth = 2, title = 'EMA 200')
// Trigger the alert conditions for green and red alerts
alertcondition(greenCondition, title = 'Green Got', message = 'Green Got: Candle Close is Above EMA 200 and Candle Close is within 150 points.')
alertcondition(redCondition, title = 'Red Got', message = 'Red Got: Candle Close is Below EMA 200 and Candle Close is within 150 points.')
// Trigger the alert condition for big volume
alertcondition(bigVolumeCondition, title = 'Big Volume', message = 'Big Volume: Volume is greater than 2x the average volume.')
// Optional: Highlight the conditions with background color for visual assistance
bgcolor(greenCondition ? color.new(#00db07, 90) : na)
bgcolor(redCondition ? color.new(#ff0000, 90) : na)
bgcolor(bigVolumeCondition ? color.new(#0000ff, 90) : na) // Highlight the big volume condition with blue background
// Plot RSI values for Daily and 4-Hour Timeframe
plot(rsiDaily, color = color.blue, title = 'RSI Daily', linewidth = 2)
plot(rsi4H, color = color.red, title = 'RSI 4H', linewidth = 2)
// Plot the current RSI and its SMA
plot(rsiCurrent, color = color.green, title = 'Current RSI', linewidth = 1)
plot(smaRSI, color = color.orange, title = 'SMA of RSI', linewidth = 2)