TradeTrackerLibrary "TradeTracker"
Simple Library for tracking trades
method track(this)
tracks trade when called on every bar
Namespace types: Trade
Parameters:
this (Trade) : Trade object
Returns: current Trade object
Trade
Has the constituents to track trades generated by any method.
Fields:
id (series int)
direction (series int) : Trade direction. Positive values for long and negative values for short trades
initialEntry (series float) : Initial entry price. This value will not change even if the entry is changed in the lifecycle of the trade
entry (series float) : Updated entry price. Allows variations to initial calculated entry. Useful in cases of trailing entry.
initialStop (series float) : Initial stop. Similar to initial entry, this is the first calculated stop for the lifecycle of trade.
stop (series float) : Trailing Stop. If there is no trailing, the value will be same as that of initial trade
targets (float ) : array of target values.
startBar (series int) : bar index of starting bar. Set by default when object is created. No need to alter this after that.
endBar (series int) : bar index of last bar in trade. Set by tracker on each execution
startTime (series int) : time of the start bar. Set by default when object is created. No need to alter this after that.
endTime (series int) : time of the ending bar. Updated by tracking method.
status (series int) : Integer parameter to track the status of the trade
retest (series bool) : Boolean parameter to notify if there was retest of the entry price
"entry" için komut dosyalarını ara
peterzorve-libraryLibrary "library"
is_bullish_engulfing()
is_bearish_engulfing()
is_hammer(fib_level)
Parameters:
fib_level (float)
is_shooting_star(fib_level)
Parameters:
fib_level (float)
is_hammer_and_star(fib_level)
Parameters:
fib_level (float)
is_star_and_hammer(fib_level)
Parameters:
fib_level (float)
is_dogi(dogi_body_ratio)
Parameters:
dogi_body_ratio (float)
is_bear_bear_bullish_engulf()
is_atr_stoploss_takeprofit(atr_multiplier, atr_length, reward_ratio)
Parameters:
atr_multiplier (float)
atr_length (simple int)
reward_ratio (float)
is_fixed_stoploss_takeprofit(stoploss_pips, reward_ratio)
Parameters:
stoploss_pips (float)
reward_ratio (float)
is_step_trailing_stoploss(stoploss_pips)
Parameters:
stoploss_pips (float)
is_atr_trailing_stoploss(atr_multiplier, break_even_pip)
Parameters:
atr_multiplier (float)
break_even_pip (int)
is_pull_back_strategy(length)
Parameters:
length (simple int)
is_trade_statistics(condition, entrypoint, stoploss, takeprofit)
Parameters:
condition (bool)
entrypoint (float)
stoploss (float)
takeprofit (float)
is_table_of_statistics(win_trades, lost_trades, even_trades, pips_won, pips_lost)
Parameters:
win_trades (int)
lost_trades (int)
even_trades (int)
pips_won (float)
pips_lost (float)
is_pine_info(lotsize, stoploss, takeprofit)
Parameters:
lotsize (float)
stoploss (float)
takeprofit (float)
is_support_and_resistance_strategy(look_back, look_forward)
Parameters:
look_back (int)
look_forward (int)
is_choral_strategy(smoothing_period, constant_d)
Parameters:
smoothing_period (int)
constant_d (float)
is_bollinger_band_strategy(length, dev_entry, dev_stoploss, dev_takeprofit)
Parameters:
length (int)
dev_entry (simple float)
dev_stoploss (simple float)
dev_takeprofit (simple float)
PlurexSignalCoreLibrary "PlurexSignalCore"
General purpose functions and helpers for use in more specific Plurex Signal alerting scripts and libraries
plurexMarket()
Build a Plurex market string from a base and quote asset symbol.
Returns: A market string that can be used in Plurex Signal messages.
tickerToPlurexMarket()
Builds Plurex market string from the syminfo
Returns: A market string that can be used in Plurex Signal messages.
simpleMessage(secret, action, marketOverride)
Builds Plurex Signal Message json to be sent to a Signal webhook
Parameters:
secret : The secret for your Signal on plurex
action : The action of the message. One of .
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
entryMessage(secret, isLong, budgetPercentage, priceLimit, marketOverride)
Builds Plurex Signal Entry Message json to be sent to a Signal webhook with optional parameters for budget and price limits.
Parameters:
secret : The secret for your Signal on plurex
isLong : The action of the message. true for LONG, false for SHORT.
budgetPercentage : Optional, The percentage of budget to use in the entry.
priceLimit : Optional, The worst price to accept for the entry.
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
long(secret, budgetPercentage, priceLimit, marketOverride)
Builds Plurex Signal LONG Message json to be sent to a Signal webhook with optional parameters for budget and price limits.
Parameters:
secret : The secret for your Signal on plurex
budgetPercentage : Optional, The percentage of budget to use in the entry.
priceLimit : Optional, The worst price to accept for the entry.
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
short(secret, budgetPercentage, priceLimit, marketOverride)
Builds Plurex Signal SHORT Message json to be sent to a Signal webhook with optional parameters for budget and price limits.
Parameters:
secret : The secret for your Signal on plurex
budgetPercentage : Optional, The percentage of budget to use in the entry.
priceLimit : Optional, The worst price to accept for the entry.
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
closeAll(secret, marketOverride)
Builds Plurex Signal CLOSE_ALL Message json to be sent to a Signal webhook.
Parameters:
secret : The secret for your Signal on plurex
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
closeShorts(secret, marketOverride)
Builds Plurex Signal CLOSE_SHORTS Message json to be sent to a Signal webhook.
Parameters:
secret : The secret for your Signal on plurex
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
closeLongs(secret, marketOverride)
Builds Plurex Signal CLOSE_LONGS Message json to be sent to a Signal webhook.
Parameters:
secret : The secret for your Signal on plurex
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
closeFirstLong(secret, marketOverride)
Builds Plurex Signal CLOSE_FIRST_LONG Message json to be sent to a Signal webhook.
Parameters:
secret : The secret for your Signal on plurex
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
closeLastLong(secret, marketOverride)
Builds Plurex Signal CLOSE_LAST_LONG Message json to be sent to a Signal webhook.
Parameters:
secret : The secret for your Signal on plurex
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
closeFirstShort(secret, marketOverride)
Builds Plurex Signal CLOSE_FIRST_SHORT Message json to be sent to a Signal webhook.
Parameters:
secret : The secret for your Signal on plurex
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
closeLastShort(secret, marketOverride)
Builds Plurex Signal CLOSE_LAST_SHORT Message json to be sent to a Signal webhook.
Parameters:
secret : The secret for your Signal on plurex
marketOverride : Optional, defaults to the syminfo for the ticker. Use the `plurexMarket` function to build your own.
Returns: A json string message that can be used in alerts to send messages to Plurex.
Coral Trend Pullback Strategy (TradeIQ)Description:
Strategy is taken from the TradeIQ YouTube video called "I Finally Found 80% Win Rate Trading Strategy For Crypto".
Check out the full video for further details/clarification on strategy entry/exit conditions.
The default settings are exactly as TradeIQ described in his video.
However I found some better results by some tweaking settings, increasing R:R ratio and by turning off confirmation indicators.
This would suggest that perhaps the current confirmation indicators are not the best options. I'm happy to try add some other optional confirmation indicators if they look to be more effective.
Recommended timeframe: 1H
Strategy incorporates the following features:
Risk management:
Configurable X% loss per stop loss
Configurable R:R ratio
Trade entry:
Based on strategy conditions below
Trade exit:
Based on strategy conditions below
Backtesting:
Configurable backtesting range by date
Trade drawings:
Each entry condition indicator can be turned on and off
TP/SL boxes drawn for all trades. Can be turned on and off
Trade exit information labels. Can be turned on and off
NOTE: Trade drawings will only be applicable when using overlay strategies
Alerting:
Alerts on LONG and SHORT trade entries
Debugging:
Includes section with useful debugging techniques
Strategy conditions
Trade entry:
LONG
C1: Coral Trend is bullish
C2: At least 1 candle where low is above Coral Trend since last cross above Coral Trend
C3: Pullback happens and price closes below Coral Trend
C4: Coral Trend colour remains bullish for duration of pullback
C5: After valid pullback, price then closes above Coral Trend
C6: Optional confirmation indicators (choose either C6.1 or C6.2 or NONE):
C6.1: ADX and DI (Single indicator)
C6.1.1: Green line is above red line
C6.1.2: Blue line > 20
C6.1.3: Blue trending up over last 1 candle
C6.2: Absolute Strengeh Histogram + HawkEye Volume Indicator (Two indicators combined)
C6.2.1: Absolute Strengeh Histogram colour is blue
C6.2.2: HawkEye Volume Indicator colour is green
SHORT
C1: Coral Trend is bearish
C2: At least 1 candle where high is below Coral Trend since last cross below Coral Trend
C3: Pullback happens and price closes above Coral Trend
C4: Coral Trend colour remains bearish for duration of pullback
C5: After valid pullback, price then closes below Coral Trend
C6: Optional confirmation indicators (choose either C6.1 or C6.2 or NONE):
C6.1: ADX and DI (Single indicator)
C6.1.1: Red line is above green line
C6.1.2: Blue line > 20
C6.1.3: Blue trending up over last 1 candle
C6.2: Absolute Strengeh Histogram + HawkEye Volume Indicator (Two indicators combined)
C6.2.1: Absolute Strengeh Histogram colour is red
C6.2.2: HawkEye Volume Indicator colour is red
NOTE: All the optional confirmation indicators cannot be overlayed with Coral Trend so feel free to add each separately to the chart for visual purposes
Trade exit:
Stop Loss: Calculated by recent swing low over previous X candles (configurable with "Local High/Low Lookback")
Take Profit: Calculated from R:R multiplier * Stop Loss size
Credits
Strategy origin: TradeIQ's YouTube video called "I Finally Found 80% Win Rate Trading Strategy For Crypto"
It combines the following indicators for trade entry conditions:
Coral Trend Indicator by @LazyBear (Main indicator)
Absolute Strength Histogram | jh by @jiehonglim (Optional confirmation indicator)
Indicator: HawkEye Volume Indicator by @LazyBear (Optional confirmation indicator)
ADX and DI by @BeikabuOyaji (Optional confirmation indicator)
SSL + Wave Trend StrategyStrategy incorporates the following features:
Risk management:
Configurable X% loss per stop loss
Configurable R:R ratio
Trade entry:
Based on strategy conditions below
Trade exit:
Based on strategy conditions below
Backtesting:
Configurable backtesting range by date
Trade drawings:
Each entry condition indicator can be turned on and off
TP/SL boxes drawn for all trades. Can be turned on and off
Trade exit information labels. Can be turned on and off
NOTE: Trade drawings will only be applicable when using overlay strategies
Alerting:
Alerts on LONG and SHORT trade entries
Debugging:
Includes section with useful debugging techniques
Strategy conditions
Trade entry:
LONG
C1: SSL Hybrid baseline is BLUE
C2: SSL Channel crosses up (green above red)
C3: Wave Trend crosses up (represented by pink candle body)
C4: Entry candle height is not greater than configured threshold
C5: Entry candle is inside Keltner Channel (wicks or body depending on configuration)
C6: Take Profit target does not touch EMA (represents resistance)
SHORT
C1: SSL Hybrid baseline is RED
C2: SSL Channel crosses down (red above green)
C3: Wave Trend crosses down (represented by orange candle body)
C4: Entry candle height is not greater than configured threshold
C5: Entry candle is inside Keltner Channel (wicks or body depending on configuration)
C6: Take Profit target does not touch EMA (represents support)
Trade exit:
Stop Loss: Size configurable with NNFX ATR multiplier
Take Profit: Calculated from Stop Loss using R:R ratio
Credits
Strategy is based on the YouTube video "This Unique Strategy Made 47% Profit in 2.5 Months " by TradeSmart.
It combines the following indicators to determine trade entry/exit conditions:
Wave Trend: Indicator: WaveTrend Oscillator by @LazyBear
SSL Channel: SSL channel by @ErwinBeckers
SSL Hybrid: SSL Hybrid by @Mihkel00
Keltner Channels: Keltner Channels Bands by @ceyhun
Candle Height: Candle Height in Percentage - Columns by @FreeReveller
NNFX ATR: NNFX ATR by @sueun123
DMI StrategyThis strategy is based on DMI indicator. It helps me to identify base or top of the script. I mostly use this script to trade in Nifty bank options, even when the signal comes in nifty . It can be used to trade in other scripts as well. Pivot points can also be used to take entry. Long entry is taken when DI+(11) goes below 10 and DI-(11) goes above 40 , whereas short entry is taken when DI-(11) goes below 10 and DI+(11) goes above 40.
For bank nifty , I take the trade in the strike price for which the current premium is nearby 300, with the SL of 20%. If premium goes below 10% I buy one more lot to average, but exit if the premium goes below 20% of the first entry. If the trade moves in the correct direction, we need to start trailing our stoploss or exit at the pre-defined target.
As this a strategy, there is one problem. While we are in the phase of "long", if again the "long" phase comes, it will not be shown on chart until a "short" phase has come, and vice versa. This has been resolved by creating an indicator instead of strategy with the name of "DMI Buy-sell on chart". Please go through that to get more entry points.
Please have a look at strategy tester to back test
3ngine Global BoilerplateABOUT THE BOILERPLATE
This strategy is designed to bring consistency to your strategies. It includes a macro EMA filter for filtering out countertrend trades,
an ADX filter to help filter out chop, a session filter to filter out trades outside of desired timeframe, alert messages setup for automation,
laddering in/out of trades (up to 6 rungs), trailing take profit , and beautiful visuals for each entry. There are comments throughout the
strategy that provide further instructions on how to use the boilerplate strategy. This strategy uses `threengine_global_automation_library`
throughout and must be included at the top of the strategy using `import as bot`. This allows you to use dot notation
to access functions in the library - EX: `bot.orderCurrentlyExists(orderID)`.
HOW TO USE THIS STRATEGY
1. Add your inputs
There is a section dedicated for adding your own inputs near the top of the strategy, just above the boilerplate inputs
2. Add your calculations
If your strategy requires calculations, place them in the `Strategy Specific Calculations` section
3. Add your entry criteria
Add your criteria to strategySpecificLongConditions (this gets combined with boilerplate conditions in longConditionsMet)
Add your criteria to strategySpecificShortConditions (this gets combined with boilerplate conditions in shortConditionsMet)
Set your desired entry price (calculated on every bar unless stored as a static variable) to longEntryPrice and shortEntryPrice. ( This will be the FIRST ladder if using laddering capabilities. If you pick 1 for "Ladder In Rungs" this will be the only entry. )
4. Plot anything you want to overlay on the chart in addition to the boilerplate plots and labels. Included in boilerplate:
Average entry price
Stop loss
Trailing stop
Profit target
Ladder rungs
Scalping EMA ADX RSI with Buy/Sell AlertsThis is a study indicator that shows the entries in the strategy seen in one of the youtube channel so it does not belong to me. I can't tell who it is because it's against the House Rules to advertise but you can find out if you look for it on youtube. Default values of oscilators and ema adjusted as suggested. He says he got the best results in 5 min timeframe but i tried to make things as modifiable as possible so you can mess around with the settings and create your own strategy for different timeframes if you'd like. Suggested to use with normal candlestick charts. The blue line below indicates the ADX is above the selected threshold set in the settings named "Trend Ready Limit". You can set alerts for Buy, Sell or Buy/Sell signal together.
The entry strategy itself is pretty straight forward.
The rules for entry are as follows, the script will check all of this on auto and will give you buy or sell signal :
Recommended time frame: 5 min
For Long Entry:
- Check if price above the set EMA (Can disable this rule if you'd like in the settings)
- RSI is in Oversold
- ADX is above set "Trend Ready" threshold (Meaning there is a trend going on)
- Price must approve the trend of previous candles. This is bullish for buy entries and bearish for sell entries.
- Enter with stop loss below last swing low with 1:1 or 1.5:1 take profit ratio.
For Short Entry:
- Check if price below the set EMA (Can disable this rule if you'd like in the settings)
- RSI is in Overbought
- ADX is above set "Trend Ready" threshold (Meaning there is a trend going on)
- Price must approve the trend of previous candles. This is bullish for buy entries and bearish for sell entries.
- Enter with stop loss above last swing high with 1:1 or 1.5:1 take profit ratio.
This is my first indicator. Let me know if you want any updates. I am not sure if i can add everything but i'll try nonetheless.
Changed: Signals will check up to 2 candles before if the RSI is below or above the set value to show signal. This is because sometimes the entry signal is right but the response might be a bit late.
RSI 30 CROSSScript will give the RSI 30 40 and 70 level for present price of the stock , when the price cross the green line RSI value will be 70 , blue line RSI value will be 40 and red line RSI value will be 30 . Helps to put entry and exit based on RSI strategy.
RED line give price for RSI 30
BLUE line give price for RSI 40
GREEN line give price for RSI 70
BLACK line give SMA 200
Strategy
Stock price should above 200 MA
price should touch RSI 30 RED line and bounce back.
Entry will be the high of candle lies on RSI 40 BLUE line.
Stop loss will be the RSI 30 price(RED line ) during entry.
Target will be the RSI 70 price ( GREEEN line) during entry.
You can take half profit at RSI 70 and trail stop loss on RSI 70 till it cross.
This will help you to find the Price for stock, when it cross RSI value 30 , 40 and 70 to place entry exit and target based on the trade strategy will follow RSI.
If you want to entry, when stock cross RSI 30 or 40 from below . You can place a stop loss limit buy order at price range .
If you want to exit, When stock cross RSI 70 . you place stock loss at green line price.
Forex Scalping 1min Bollinger Bands, RSI and ADX Trading SystemThis is a Forex Scalping Trading Sytem based on the Bollinger Bands.
Its suited for major pairs, with lowest possible comission (below 1 pip) and with timeframes ranging between 1-15 min.
Indicators:
Bollinger bands
ADX
RSI
Rules for entry:
Long Entry: price to move below the upper Bollinger Bands RSI raise above the 30 line and ADX<32 at the same time.
Short Entry: price to move above the upper Bollinger Bands, RSI raise below the 70 line and ADX<32 at the same time.
Rules for exit
Profit Exit: 3 options: 1, exit position when the price touches the middle band, 2) when the price touches the opposite band, X pips target profit.
Loss Exit: X pips loss
Bollinger Band with RSI
Using combination bollinger band and RSI indicator as guide to predict price volatility and the best entry point. The strategy logic is pretty straightforward where we're interested with close price that touches the lower bollinger band ; there are only two scenarios that will happened after the price reaches the lower band; the price might rebound from the lower bollinger band or drop lower and continue downtrend. To confirm the price movement, we use a second indicator which is the RSI to further investigate the price trend. For example, if the price reaches the lower bollinger band but the RSI value is not in the oversold region, we can conclude that the price will go lower and continue downtrend. If the RSI value is in the oversold region, we can use this price area as our entry point.
Stop loss is necessary to avoid losing too much capital if the RSI value lingers too long in the oversold region.
Best take profit area is when the price rebound above the middle bollinger band area/upper bollinger band or when the RSI reaches overbought region; whichever comes first.
Long entry:
RSI < 30 & close price < lower bollinger band
Exit entry:
RSI > 70
Default stop loss: -25%
Swing/Daytrading strategy with reversal option
Hello, today I bring a swing reversal strategy that work on all financial markets.
It uses timeframes starting from 1h, the bigger the better.
Its very dangerous because it has no stop loss, neither a take profit. Our exit condition is based on the reversal on the entry .
For entry we have 2 types : normal and reversal
Lets say we want to go long , for that we check the last CLOSE of a candle with the previos HIGH. If its higher than that, and at the same time CLOSE is bigger than the moving average, we have a long entry.
For short we have CLOSE with the previous LOW. If its lower than that and at the same time is lower than moving average, we have a short entry.
For moving average we use T3 MA
For reversal what I do, is , I take the short condition and I apply it to long, and for long I apply the short condition.
On many cases I found out it work amazingly.
I forgot to add: it also has a time entry system, so we use the best hours/sessions for entries .
Exit a trade: lets say we enter short, when we find a long condition, we close short and enter into long. Viceversa for long.
If you have any questions, let me know.
Enjoy it :)
Ruckard TradingLatinoThis strategy tries to mimic TradingLatino strategy.
The current implementation is beta.
Si hablas castellano o espanyol por favor consulta MENSAJE EN CASTELLANO más abajo.
It's aimed at BTCUSDT pair and 4h timeframe.
STRATEGY DEFAULT SETTINGS EXPLANATION
max_bars_back=5000 : This is a random number of bars so that the strategy test lasts for one or two years
calc_on_order_fills=false : To wait for the 4h closing is too much. Try to check if it's worth entering a position after closing one. I finally decided not to recheck if it's worth entering after an order is closed. So it is false.
calc_on_every_tick=false
pyramiding=0 : We only want one entry allowed in the same direction. And we don't want the order to scale by error.
initial_capital=1000 : These are 1000 USDT. By using 1% maximum loss per trade and 7% as a default stop loss by using 1000 USDT at 12000 USDT per BTC price you would entry with around 142 USDT which are converted into: 0.010 BTC . The maximum number of decimal for contracts on this BTCUSDT market is 3 decimals. E.g. the minimum might be: 0.001 BTC . So, this minimal 1000 amount ensures us not to entry with less than 0.001 entries which might have happened when using 100 USDT as an initial capital.
slippage=1 : Binance BTCUSDT mintick is: 0.01. Binance slippage: 0.1 % (Let's assume). TV has an integer slippage. It does not have a percentage based slippage. If we assume a 1000 initial capital, the recommended equity is 142 which at 11996 USDT per BTC price means: 0.011 BTC. The 0.1% slippage of: 0.011 BTC would be: 0.000011 . This is way smaller than the mintick. So our slippage is going to be 1. E.g. 1 (slippage) * 0.01 (mintick)
commission_type=strategy.commission.percent and commission_value=0.1 : According to: binance . com / en / fee / schedule in VIP 0 level both maker and taker fees are: 0.1 %.
BACKGROUND
Jaime Merino is a well known Youtuber focused on crypto trading
His channel TradingLatino
features monday to friday videos where he explains his strategy.
JAIME MERINO STANCE ON BOTS
Jaime Merino stance on bots (taken from memory out of a 2020 June video from him):
'~
You know. They can program you a bot and it might work.
But, there are some special situations that the bot would not be able to handle.
And, I, as a human, I would handle it. And the bot wouldn't do it.
~'
My long term target with this strategy script is add as many
special situations as I can to the script
so that it can match Jaime Merino behaviour even in non normal circumstances.
My alternate target is learn Pine script
and enjoy programming with it.
WARNING
This script might be bigger than other TradingView scripts.
However, please, do not be confused because the current status is beta.
This script has not been tested with real money.
This is NOT an official strategy from Jaime Merino.
This is NOT an official strategy from TradingLatino . net .
HOW IT WORKS
It basically uses ADX slope and LazyBear's Squeeze Momentum Indicator
to make its buy and sell decisions.
Fast paced EMA being bigger than slow paced EMA
(on higher timeframe) advices going long.
Fast paced EMA being smaller than slow paced EMA
(on higher timeframe) advices going short.
It finally add many substrats that TradingLatino uses.
SETTINGS
__ SETTINGS - Basics
____ SETTINGS - Basics - ADX
(ADX) Smoothing {14}
(ADX) DI Length {14}
(ADX) key level {23}
____ SETTINGS - Basics - LazyBear Squeeze Momentum
(SQZMOM) BB Length {20}
(SQZMOM) BB MultFactor {2.0}
(SQZMOM) KC Length {20}
(SQZMOM) KC MultFactor {1.5}
(SQZMOM) Use TrueRange (KC) {True}
____ SETTINGS - Basics - EMAs
(EMAS) EMA10 - Length {10}
(EMAS) EMA10 - Source {close}
(EMAS) EMA55 - Length {55}
(EMAS) EMA55 - Source {close}
____ SETTINGS - Volume Profile
Lowest and highest VPoC from last three days
is used to know if an entry has a support
VPVR of last 100 4h bars
is also taken into account
(VP) Use number of bars (not VP timeframe): Uses 'Number of bars {100}' setting instead of 'Volume Profile timeframe' setting for calculating session VPoC
(VP) Show tick difference from current price {False}: BETA . Might be useful for actions some day.
(VP) Number of bars {100}: If 'Use number of bars (not VP timeframe)' is turned on this setting is used to calculate session VPoC.
(VP) Volume Profile timeframe {1 day}: If 'Use number of bars (not VP timeframe)' is turned off this setting is used to calculate session VPoC.
(VP) Row width multiplier {0.6}: Adjust how the extra Volume Profile bars are shown in the chart.
(VP) Resistances prices number of decimal digits : Round Volume Profile bars label numbers so that they don't have so many decimals.
(VP) Number of bars for bottom VPOC {18}: 18 bars equals 3 days in suggested timeframe of 4 hours. It's used to calculate lowest session VPoC from previous three days. It's also used as a top VPOC for sells.
(VP) Ignore VPOC bottom advice on long {False}: If turned on it ignores bottom VPOC (or top VPOC on sells) when evaluating if a buy entry is worth it.
(VP) Number of bars for VPVR VPOC {100}: Number of bars to calculate the VPVR VPoC. We use 100 as Jaime once used. When the price bounces back to the EMA55 it might just bounce to this VPVR VPoC if its price it's lower than the EMA55 (Sells have inverse algorithm).
____ SETTINGS - ADX Slope
ADX Slope
help us to understand if ADX
has a positive slope, negative slope
or it is rather still.
(ADXSLOPE) ADX cut {23}: If ADX value is greater than this cut (23) then ADX has strength
(ADXSLOPE) ADX minimum steepness entry {45}: ADX slope needs to be 45 degrees to be considered as a positive one.
(ADXSLOPE) ADX minimum steepness exit {45}: ADX slope needs to be -45 degrees to be considered as a negative one.
(ADXSLOPE) ADX steepness periods {3}: In order to avoid false detection the slope is calculated along 3 periods.
____ SETTINGS - Next to EMA55
(NEXTEMA55) EMA10 to EMA55 bounce back percentage {80}: EMA10 might bounce back to EMA55 or maybe to 80% of its complete way to EMA55
(NEXTEMA55) Next to EMA55 percentage {15}: How much next to the EMA55 you need to be to consider it's going to bounce back upwards again.
____ SETTINGS - Stop Loss and Take Profit
You can set a default stop loss or a default take profit.
(STOPTAKE) Stop Loss % {7.0}
(STOPTAKE) Take Profit % {2.0}
____ SETTINGS - Trailing Take Profit
You can customize the default trailing take profit values
(TRAILING) Trailing Take Profit (%) {1.0}: Trailing take profit offset in percentage
(TRAILING) Trailing Take Profit Trigger (%) {2.0}: When 2.0% of benefit is reached then activate the trailing take profit.
____ SETTINGS - MAIN TURN ON/OFF OPTIONS
(EMAS) Ignore advice based on emas {false}.
(EMAS) Ignore advice based on emas (On closing long signal) {False}: Ignore advice based on emas but only when deciding to close a buy entry.
(SQZMOM) Ignore advice based on SQZMOM {false}: Ignores advice based on SQZMOM indicator.
(ADXSLOPE) Ignore advice based on ADX positive slope {false}
(ADXSLOPE) Ignore advice based on ADX cut (23) {true}
(STOPTAKE) Take Profit? {false}: Enables simple Take Profit.
(STOPTAKE) Stop Loss? {True}: Enables simple Stop Loss.
(TRAILING) Enable Trailing Take Profit (%) {True}: Enables Trailing Take Profit.
____ SETTINGS - Strategy mode
(STRAT) Type Strategy: 'Long and Short', 'Long Only' or 'Short Only'. Default: 'Long and Short'.
____ SETTINGS - Risk Management
(RISKM) Risk Management Type: 'Safe', 'Somewhat safe compound' or 'Unsafe compound'. ' Safe ': Calculations are always done with the initial capital (1000) in mind. The maximum losses per trade/day/week/month are taken into account. ' Somewhat safe compound ': Calculations are done with initial capital (1000) or a higher capital if it increases. The maximum losses per trade/day/week/month are taken into account. ' Unsafe compound ': In each order all the current capital is gambled and only the default stop loss per order is taken into account. That means that the maximum losses per trade/day/week/month are not taken into account. Default : 'Somewhat safe compound'.
(RISKM) Maximum loss per trade % {1.0}.
(RISKM) Maximum loss per day % {6.0}.
(RISKM) Maximum loss per week % {8.0}.
(RISKM) Maximum loss per month % {10.0}.
____ SETTINGS - Decimals
(DECIMAL) Maximum number of decimal for contracts {3}: How small (3 decimals means 0.001) an entry position might be in your exchange.
EXTRA 1 - PRICE IS IN RANGE indicator
(PRANGE) Print price is in range {False}: Enable a bottom label that indicates if the price is in range or not.
(PRANGE) Price range periods {5}: How many previous periods are used to calculate the medians
(PRANGE) Price range maximum desviation (%) {0.6} ( > 0 ): Maximum positive desviation for range detection
(PRANGE) Price range minimum desviation (%) {0.6} ( > 0 ): Mininum negative desviation for range detection
EXTRA 2 - SQUEEZE MOMENTUM Desviation indicator
(SQZDIVER) Show degrees {False}: Show degrees of each Squeeze Momentum Divergence lines to the x-axis.
(SQZDIVER) Show desviation labels {False}: Whether to show or not desviation labels for the Squeeze Momentum Divergences.
(SQZDIVER) Show desviation lines {False}: Whether to show or not desviation lines for the Squeeze Momentum Divergences.
EXTRA 3 - VOLUME PROFILE indicator
WARNING: This indicator works not on current bar but on previous bar. So in the worst case it might be VP from 4 hours ago. Don't worry, inside the strategy calculus the correct values are used. It's just that I cannot show the most recent one in the chart.
(VP) Print recent profile {False}: Show Volume Profile indicator
(VP) Avoid label price overlaps {False}: Avoid label prices to overlap on the chart.
EXTRA 4 - ZIGNALY SUPPORT
(ZIG) Zignaly Alert Type {Email}: 'Email', 'Webhook'. ' Email ': Prepare alert_message variable content to be compatible with zignaly expected email content format. ' Webhook ': Prepare alert_message variable content to be compatible with zignaly expected json content format.
EXTRA 5 - DEBUG
(DEBUG) Enable debug on order comments {False}: If set to true it prepares the order message to match the alert_message variable. It makes easier to debug what would have been sent by email or webhook on each of the times an order is triggered.
HOW TO USE THIS STRATEGY
BOT MODE: This is the default setting.
PROPER VOLUME PROFILE VIEWING: Click on this strategy settings. Properties tab. Make sure Recalculate 'each time the order was run' is turned off.
NEWBIE USER: (Check PROPER VOLUME PROFILE VIEWING above!) You might want to turn on the 'Print recent profile {False}' setting. Alternatively you can use my alternate realtime study: 'Resistances and supports based on simplified Volume Profile' but, be aware, it might consume one indicator.
ADVANCED USER 1: Turn on the 'Print price is in range {False}' setting and help us to debug this subindicator. Also help us to figure out how to include this value in the strategy.
ADVANCED USER 2: Turn on the all the (SQZDIVER) settings and help us to figure out how to include this value in the strategy.
ADVANCED USER 3: (Check PROPER VOLUME PROFILE VIEWING above!) Turn on the 'Print recent profile {False}' setting and report any problem with it.
JAIME MERINO: Just use the indicator as it comes by default. It should only show BUY signals, SELL signals and their associated closing signals. From time to time you might want to check 'ADVANCED USER 2' instructions to check that there's actually a divergence. Check also 'ADVANCED USER 1' instructions for your amusement.
EXTRA ADVICE
It's advised that you use this strategy in addition to these two other indicators:
* Squeeze Momentum Indicator
* ADX
so that your chart matches as close as possible to TradingLatino chart.
ZIGNALY INTEGRATION
This strategy supports Zignaly email integration by default. It also supports Zignaly Webhook integration.
ZIGNALY INTEGRATION - Email integration example
What you would write in your alert message:
||{{strategy.order.alert_message}}||key=MYSECRETKEY||
ZIGNALY INTEGRATION - Webhook integration example
What you would write in your alert message:
{ {{strategy.order.alert_message}} , "key" : "MYSECRETKEY" }
CREDITS
I have reused and adapted some code from
'Directional Movement Index + ADX & Keylevel Support' study
which it's from TradingView console user.
I have reused and adapted some code from
'3ema' study
which it's from TradingView hunganhnguyen1193 user.
I have reused and adapted some code from
'Squeeze Momentum Indicator ' study
which it's from TradingView LazyBear user.
I have reused and adapted some code from
'Strategy Tester EMA-SMA-RSI-MACD' study
which it's from TradingView fikira user.
I have reused and adapted some code from
'Support Resistance MTF' study
which it's from TradingView LonesomeTheBlue user.
I have reused and adapted some code from
'TF Segmented Linear Regression' study
which it's from TradingView alexgrover user.
I have reused and adapted some code from
"Poor man's volume profile" study
which it's from TradingView IldarAkhmetgaleev user.
FEEDBACK
Please check the strategy source code for more detailed information
where, among others, I explain all of the substrats
and if they are implemented or not.
Q1. Did I understand wrong any of the Jaime substrats (which I have implemented)?
Q2. The strategy yields quite profit when we should long (EMA10 from 1d timeframe is higher than EMA55 from 1d timeframe.
Why the strategy yields much less profit when we should short (EMA10 from 1d timeframe is lower than EMA55 from 1d timeframe)?
Any idea if you need to do something else rather than just reverse what Jaime does when longing?
FREQUENTLY ASKED QUESTIONS
FAQ1. Why are you giving this strategy for free?
TradingLatino and his fellow enthusiasts taught me this strategy. Now I'm giving back to them.
FAQ2. Seriously! Why are you giving this strategy for free?
I'm confident his strategy might be improved a lot. By keeping it to myself I would avoid other people contributions to improve it.
Now that everyone can contribute this is a win-win.
FAQ3. How can I connect this strategy to my Exchange account?
It seems that you can attach alerts to strategies.
You might want to combine it with a paying account which enable Webhook URLs to work.
I don't know how all of this works right now so I cannot give you advice on it.
You will have to do your own research on this subject. But, be careful. Automating trades, if not done properly,
might end on you automating losses.
FAQ4. I have just found that this strategy by default gives more than 3.97% of 'maximum series of losses'. That's unacceptable according to my risk management policy.
You might want to reduce default stop loss setting from 7% to something like 5% till you are ok with the 'maximum series of losses'.
FAQ5. Where can I learn more about your work on this strategy?
Check the source code. You might find unused strategies. Either because there's not a substantial increases on earnings. Or maybe because they have not been implemented yet.
FAQ6. How much leverage is applied in this strategy?
No leverage.
FAQ7. Any difference with original Jaime Merino strategy?
Most of the times Jaime defines an stop loss at the price entry. That's not the case here. The default stop loss is 7% (but, don't be confused it only means losing 1% of your investment thanks to risk management). There's also a trailing take profit that triggers at 2% profit with a 1% trailing.
FAQ8. Why this strategy return is so small?
The strategy should be improved a lot. And, well, backtesting in this platform is not guaranteed to return theoric results comparable to real-life returns. That's why I'm personally forward testing this strategy to verify it.
MENSAJE EN CASTELLANO
En primer lugar se agradece feedback para mejorar la estrategia.
Si eres un usuario avanzado y quieres colaborar en mejorar el script no dudes en comentar abajo.
Ten en cuenta que aunque toda esta descripción tenga que estar en inglés no es obligatorio que el comentario esté en inglés.
CHISTE - CASTELLANO
¡Pero Jaime!
¡400.000!
¡Tu da mun!
Two Take Profits and Two Stop LossThis script is for research purposes only. I am not a financial advisor.
Entry Condition
This strategy is based on two take profit targets, two stop loss, and scaling out strategy. The entry rule is very simple. Whenever the EMA crossover WMA, the long trade is taken and vice versa.
Take Profit and Stop Loss
The first take profit is set at 20 pips above the long entry and the second take profit is set at 40 pips above the long entry. Meanwhile, the first stop loss is set at 20 pips below the long entry and the second stop loss is set at the long entry.
Money Management
When the first take profit is achieved, half of the position is closed and the first stop loss is moved to the entry-level. The rest of the position is open to achieve either second take profit or second stop loss.
There are three outcomes when using this strategy. Let's say you enter the trade with 200 lot size and you are risking 2% of your equity.
1. The first outcome is when the price hits stop loss, you lose the entire 2%.
2. The second outcome is when the price hits the first take profit and you close half of your position. Meaning that you have gained 1%. Then you let the trade running and eventually it hits the second stop loss. Remember your first stop loss has changed to the second stop loss when the first take profit is achieved. The total loss is 0% because the price is at your entry-level. You have gained the earlier 1% and then lost 0%. At this point, you are at 1% gained.
3. The third outcome is similar to the second out but instead of hitting the second stop loss, the trade is running to your favor and hits the second take profit.
Therefore, you gained 1% from the first take profit and you gained another 2% for the second take profit. Your total gained is 3%
Summary
The reason behind this strategy is to minimize risk. with normal strategy, you only have two outcomes which are either win or loss. With this strategy, you have three outcomes which win 3%, win 1%, or loss 2%.
This is my similar strategy but with single stop loss
Two Take Profit StrategyThis script is for research purposes only. I am not a financial advisor.
Entry Condition
This strategy is based on two take profit targets and scaling out strategy. The entry rule is very simple. Whenever the EMA crossover WMA, the long trade is taken and vice versa.
Take Profit and Stop Loss
The first take profit is set at 20 pips above the long entry and the second take profit is set at 40 pips above the long entry. Meanwhile, the stop loss is set at 20 pips below the long entry.
Money Management
When the first take profit is achieved, half of the position is closed. The rest of the position is open to achieve either second take profit or stop loss.
There are three outcomes when using this strategy. Let's say you enter the trade with 200 lot size and you are risking 2% of your equity.
1. The first outcome is when the price hits stop loss, you lose the entire 2%.
2. The second outcome is when the price hits the first take profit and you close half of your position. Meaning that you have gained 1%. Then you let the trade running and eventually it hits stop loss. The total loss is 0% because the remaining lot size which is 200/2=100 times by 20pips is 1%. You have gained the earlier 1% and then loss 1%. At this point, you are at break even.
3. The third outcome is similar to the second out but instead of hiring stop loss, the trade is running to your favor and hits the second take profit.
Therefore, you gained 1% from the first take profit and you gained another 2% for the second take profit. Your total gained is 3%
Summary
The reason behind this strategy is to minimize risk. with normal strategy, you only have two outcomes which are either win or loss. With this strategy, you have three outcomes which are win, loss or break even.
SMC Strategy Tool v1.0 - Institutional SuiteDescription: The SMC Strategy Tool v1.0 is a comprehensive technical analysis suite designed for traders following the Smart Money Concepts (SMC) methodology. It combines market structure, institutional liquidity zones, and mathematical pivots to provide a high-probability trading environment.
Key Features:
Automatic Market Structure: Real-time detection of CHoCH (Change of Character) and BOS (Break of Structure) based on price action confirmation.
Institutional Order Flow (FVG): Identifies Fair Value Gaps with a dynamic mitigation system (boxes disappear once the price fills the inefficiency).
Premium & Discount Zones: Automatically calculates the current trading range and highlights the "cheap" (Discount) and "expensive" (Premium) areas for optimal entry.
Daily Pivot Points: Seamless integration of Daily Pivots (P, R1-R3, S1-S3) for institutional confluence.
Live Analytics Dashboard: A clean, non-intrusive table monitoring Market Phase, RSI (Momentum), and ATR (Volatility).
Smart Alerts: Built-in logic for "Discount Entry" during Bullish trends and "Premium Entry" during Bearish trends.
How to Trade:
Identify the Trend: Look at the Dashboard for the current Market Phase (Bullish/Bearish).
Wait for Value: Do not chase the price. Wait for the price to return to the Discount Zone (for Longs) or Premium Zone (for Shorts).
Find Confluence: The highest probability trades occur when a Discount/Premium entry aligns with an FVG and a Daily Pivot level.
Confirmation: Check the RSI cell. If it's red/green, the move might be exhausted; wait for a neutral reading or a structural reaction.
Available Alerts:
Trend Shift (CHoCH): Get notified immediately when the market structure shifts (e.g., from Bearish to Bullish).
Trend Continuation (BOS): Signals when the current trend is confirmed by a new structural break.
Discount Zone Entry (Long Bias): Notifies you when the price enters the Discount Zone while the Market Phase is Bullish. This prevents FOMO buying at high prices.
Premium Zone Entry (Short Bias): Notifies you when the price enters the Premium Zone while the Market Phase is Bearish. This ensures you are selling at institutional "expensive" prices.
How to set up Alerts:
Click the Alerts icon in the right sidebar.
Under Condition, select: SMC Strategy Tool v1.0 - Institutional Suite.
Select "Any alert() function call" (or Qualsiasi chiamata alla funzione alert()).
Choose your preferred notification method (Popup, Email, or App notification).
The alert message will automatically include the Ticker, Timeframe, and the specific action to take!
AI Reversal Signals Custom [wjdtks255]📊 Indicator Overview: AI Reversal Signals Custom
This indicator is a comprehensive trend-following and reversal detection tool. It combines the long-term trend bias of a 200 EMA with highly sensitive RSI-based reversal signals and momentum visualization. It is designed to capture market bottoms and tops by identifying exhaustion points in price action.
Key Features
200 EMA (Trend Filter): A gold line representing the long-term institutional trend. It helps traders distinguish between "buying the dip" and "catching a falling knife."
Reversal Buy/Sell Labels: Real-time signals that appear when the market recovers from extreme overbought or oversold conditions.
Dynamic Background Clouds: Visual indicators of trend strength changes, highlighting potential entry zones.
Momentum Histogram: Internal calculations mimic the "Bottom Bars" seen in professional suites to track the velocity of price movement.
📈 Trading Strategy (How to Trade)
1. High-Probability Long Setup (Buy)
Trend Confirmation: Price should ideally be trading above the 200 EMA for the highest success rate.
Signal: Wait for the "BUY" label to appear below the candle.
Momentum: Confirm with the Light Green background or histogram shift indicating recovery.
Entry: Enter on the close of the signal candle.
2. High-Probability Short Setup (Sell)
Trend Confirmation: Price should ideally be trading below the 200 EMA.
Signal: Wait for the "SELL" label to appear above the candle.
Momentum: Confirm with the Red background or histogram fading from green to red.
Entry: Enter on the close of the signal candle.
3. Risk Management
Stop Loss: Place your Stop Loss slightly below the recent swing low for Buy orders, or above the recent swing high for Sell orders.
Take Profit: Exit when the price reaches a major support/resistance level or when an opposing signal appears.
💡 Professional Tip
For the best results, use this indicator on the 15-minute or 1-hour timeframes. The most powerful "Ultimate Reversal" signals occur when there is a Bullish Divergence (Price making lower lows while the RSI makes higher lows) followed by a confirmed "BUY" label.
Unmitigated MTF High Low Pro - Cave Diving Bookmap Heatmap Plot
Unmitigated MTF High Low Pro - Cave Diving Bookmap Heatmap Plot
---
## 📖 Table of Contents
1. (#what-this-indicator-does)
2. (#core-concepts)
3. (#visual-components)
4. (#the-cave-diving-framework)
5. (#how-to-use-it-for-trading)
6. (#settings--customization)
7. (#best-practices)
8. (#common-scenarios)
---
## What This Indicator Does
The **Unmitigated MTF High Low v2.0** tracks unmitigated (untouch) high and low levels across multiple timeframes, helping you identify key support and resistance zones that the market hasn't revisited yet. Think of it as a sophisticated memory system for price action - it remembers where price has been, and more importantly, where it *hasn't been back to*.
### Why "Unmitigated" Matters
In futures trading, especially on instruments like NQ and ES, the market has a tendency to revisit levels where liquidity was left behind. An "unmitigated" level is one that hasn't been touched since it was formed. These levels often act as magnets for price, and understanding their age and proximity gives you a significant edge in:
- **Entry timing** - Waiting for price to approach tested levels
- **Exit planning** - Taking profits before ancient resistance/support
- **Risk management** - Avoiding entries when approaching multiple old levels
- **Liquidity mapping** - Visualizing where orders likely cluster
---
## Core Concepts
### 1. **Sessions & Age**
The indicator uses **New York trading sessions** (6:00 PM to 5:59 PM NY time) as the primary time measurement. This aligns with how futures markets naturally segment their activity.
**Age Categories:**
- 🟢 **New (0-1 sessions)** - Fresh levels, recently formed
- 🟡 **Medium (2-3 sessions)** - Tested by time, gaining significance
- 🔴 **Old (4-6 sessions)** - Highly significant, survived multiple days
- 🟣 **Ancient (7+ sessions)** - Extreme significance, major support/resistance
The longer a level remains unmitigated, the more significant it becomes. Think of it like compound interest - time adds weight to these zones.
### 2. **Multi-Timeframe Tracking**
You can set the indicator to track high/low levels from any timeframe (default is 15 minutes). This means you're watching for unmitigated 15-minute highs and lows while trading on, say, a 1-minute or 5-minute chart.
**Why this matters:**
- Higher timeframe levels have more weight
- You can see multiple timeframe structure simultaneously
- Helps you avoid fighting larger timeframe momentum
### 3. **Mitigation**
A level becomes "mitigated" (deactivated) when price touches it:
- **High levels** are mitigated when price reaches or exceeds them
- **Low levels** are mitigated when price reaches or goes below them
Once mitigated, the level disappears from view. The indicator only shows you the untouch levels that still matter.
---
## Visual Components
### 📊 The Dashboard Table
Located in the corner of your chart (configurable), the table shows:
```
┌─────────┬───────────┬────────┬─────┬───────┐
│ Level │ Price │ Points │ Age │ % │
├─────────┼───────────┼────────┼─────┼───────┤
│ ↑↑↑↑↑ │ 21,450.25 │ +45.50 │ 8 │ +0.21%│ ← 5th High (Ancient)
│ ↑↑↑↑ │ 21,430.00 │ +25.25 │ 5 │ +0.12%│ ← 4th High (Old)
│ ↑↑↑ │ 21,420.50 │ +15.75 │ 3 │ +0.07%│ ← 3rd High (Medium)
│ ↑↑ │ 21,412.00 │ +7.25 │ 1 │ +0.03%│ ← 2nd High (New)
│ ↑ ⚠️ │ 21,408.25 │ +3.50 │ 0 │ +0.02%│ ← 1st High (Proximity Alert!)
├─────────┼───────────┼────────┼─────┼───────┤
│ 15 mins │ 🟢 │ Δ 8.75 │ 2U │ │ ← Status Row
├─────────┼───────────┼────────┼─────┼───────┤
│ ↓ ⚠️ │ 21,399.50 │ -5.25 │ 0 │ -0.02%│ ← 1st Low (Proximity Alert!)
│ ↓↓ │ 21,395.00 │ -9.75 │ 2 │ -0.05%│ ← 2nd Low (Medium)
│ ↓↓↓ │ 21,385.25 │ -19.50 │ 4 │ -0.09%│ ← 3rd Low (Old)
│ ↓↓↓↓ │ 21,370.00 │ -34.75 │ 6 │ -0.16%│ ← 4th Low (Old)
│ ↓↓↓↓↓ │ 21,350.75 │ -54.00 │ 9 │ -0.25%│ ← 5th Low (Ancient)
├─────────┼───────────┼────────┼─────┼───────┤
│ 📊 15↑ / 12↓ │ ← Statistics (optional)
└─────────┴───────────┴────────┴─────┴───────┘
```
**Reading the Table:**
- **Level Column**: Number of arrows indicates position (1-5), color shows age
- **Price**: The actual price level
- **Points**: Distance from current price (+ for highs, - for lows)
- **Age**: Number of full sessions since creation
- **%**: Percentage distance from current price
- **⚠️**: Proximity alert - price is within threshold distance
- **Status Row**: Shows timeframe, direction (🟢 bullish/🔴 bearish), tunnel width (Δ), and Strat pattern
### 📈 Visual Elements on Chart
**1. Level Lines**
- Horizontal lines showing each unmitigated level
- **Color-coded by age**: Bright colors = new, darker = older, deep purple/teal = ancient
- **Line style**: Customizable (solid, dashed, dotted)
- Automatically turn **yellow** when price gets close (proximity alert)
**2. Price Labels**
- Show the exact price and age: "21,450.25 (8d)"
- Fixed at small size for clean readability
- Positioned with configurable offset from current bar
**3. Bands (Optional)**
- Shaded zones between pairs of unmitigated levels
- Default: Between 1st and 2nd levels (the "tunnel")
- Can switch to 1st-3rd, 2nd-3rd, or disable entirely
- **Upper band** (pink/maroon) - Between unmitigated highs
- **Lower band** (blue/teal) - Between unmitigated lows
- These represent the "no man's land" or consolidation zones
---
## The Cave Diving Framework
This indicator is designed around the **Cave Diving Trading Framework** - a psychological and technical approach that maps cave diving safety protocols to futures trading risk management.
### 🤿 The Core Metaphor
**Cave diving has clear danger zones based on depth and overhead environment. Your trading should too.**
#### Shallow Water (New Levels, 0-1 Sessions)
- **Light**: Bright colors (bright red highs, bright green lows)
- **Psychology**: Fresh territory, recently tested
- **Trading**: Be aware but not overly concerned
- **Cave Diving Parallel**: You can see the surface, easy exit
#### Penetration Depth (Medium Levels, 2-3 Sessions)
- **Light**: Medium intensity colors
- **Psychology**: Building significance, market memory forming
- **Trading**: Start respecting these levels for entries/exits
- **Cave Diving Parallel**: Deeper in, need to track your line back
#### Deep Dive Zone (Old Levels, 4-6 Sessions)
- **Light**: Dark colors (deep maroon, dark blue)
- **Psychology**: Highly tested support/resistance
- **Trading**: Major decision points, plan accordingly
- **Cave Diving Parallel**: Significant overhead, careful navigation required
#### Overhead Environment (Ancient Levels, 7+ Sessions)
- **Light**: Very dark, purple/deep teal
- **Psychology**: Extreme caution required, major liquidity zones
- **Trading**: These are your "turn back" signals - don't fight ancient levels
- **Cave Diving Parallel**: Maximum danger, no room for error
### 🎯 The Proximity Alert System
Just like a cave diver's depth gauge that warns at critical thresholds, the proximity alerts (⚠️) tell you when you're entering a danger zone. When price gets within your configured threshold (default 5 points), the indicator:
- Highlights the level in **yellow** on the chart
- Shows **⚠️** in the table
- Signals: "You're entering a high-significance zone - adjust your position accordingly"
This prevents the trading equivalent of going deeper into a cave without checking your air supply.
---
## How to Use It for Trading
### 🎯 Entry Strategies
**1. The "Bounce Setup" (Mean Reversion)**
- Wait for price to approach an old or ancient unmitigated level
- Look for confluence: multiple levels nearby, bands narrowing
- Enter when price shows rejection (reversal candle patterns)
- **Example**: Price drops to a 6-session-old low, shows bullish engulfing → Long entry
**2. The "Break and Retest" (Trend Following)**
- Wait for price to break through an unmitigated level (mitigates it)
- Enter on the retest of the newly broken level
- **Example**: Price breaks above 4-session-old high → Wait for pullback to that level → Long entry
**3. The "Tunnel Trade" (Range Trading)**
- When bands are active, trade the range between 1st-2nd levels
- Short near upper band resistance, long near lower band support
- Exit at opposite side or when bands break
### 🚨 Risk Management Rules
**The Ancient Level Rule**
> Never fight ancient levels (7+ sessions). If you're long and approaching an ancient high, take profits. If you're short and approaching an ancient low, take profits.
These levels have survived a full trading week without being touched - there's likely significant liquidity and institutional interest there.
**The Proximity Exit Rule**
> When you see ⚠️ proximity alerts on multiple levels above/below your position, tighten stops or scale out.
This is your "overhead environment" warning. You're in dangerous territory.
**The New Level Filter**
> Be cautious taking positions based solely on new levels (0-1 sessions). Wait for them to age or combine with other confluence.
Fresh levels haven't been tested by time. They're like unconfirmed support/resistance.
### 📊 Reading Market Structure
**Bullish Structure (🟢 in status row)**
- Unmitigated lows are aging and holding
- Price respecting the lower band
- Old lows below acting as strong support
- **Bias**: Look for long entries at lower levels
**Bearish Structure (🔴 in status row)**
- Unmitigated highs are aging and holding
- Price respecting the upper band
- Old highs above acting as strong resistance
- **Bias**: Look for short entries at higher levels
**The Tunnel Compression**
- When the Δ (delta) in the status row is small, levels are tight
- This often precedes a breakout
- **Trading**: Wait for breakout direction, then trade the break
### 🔄 Strat Integration
The indicator shows Strat patterns in the status row:
- **1** - Inside bar (consolidation)
- **2U** - Broke high only (bullish)
- **2D** - Broke low only (bearish)
- **3** - Broke both (wide range, volatility)
Use these with the unmitigated levels:
- **2U near old high** → Potential resistance, watch for rejection
- **2D near old low** → Potential support, watch for bounce
- **3 pattern** → High volatility, respect wider stops
---
## Settings & Customization
### 📅 Session & Timeframe Settings
**HL Interval** (Default: 15 minutes)
- The timeframe for high/low calculation
- **Lower (1m, 5m)**: More levels, more noise, good for scalping
- **Higher (30m, 1H, 4H)**: Fewer levels, stronger significance, good for swing trading
- **Recommendation for NQ/ES**: 15m or 30m for day trading, 1H for swing trading
**Session Age Threshold** (Default: 2)
- How many sessions before a level is considered "old"
- Lower = more levels classified as old
- Higher = stricter definition of significance
### 📊 Level Display Options
**Show Level Lines**
- Toggle: Display horizontal lines for each level
- **Turn off** if you prefer a cleaner chart and only want the table
**Show Level Labels**
- Toggle: Display price labels on the chart
- **Turn off** for minimal visual clutter
**Label Offset**
- Distance (in bars) from current price bar to place labels
- Increase if labels overlap with price action
**Level Line Width & Style**
- Customize visual appearance
- **Thin solid**: Minimal distraction
- **Thick dashed**: High visibility
### 🎨 Age-Based Color Coding
Customize colors for each age category (high and low separately):
- **New (0-1 sessions)**: Default bright red/green
- **Medium (2-3 sessions)**: Default medium intensity
- **Old (4+ sessions)**: Default dark red/blue
- **Ancient (7+ sessions)**: Default deep purple/teal
**Color Strategy Tips:**
- Keep ancient levels in highly contrasting colors
- Use opacity (transparency) if you want subtler lines
- Match your chart's color scheme for aesthetic coherence
### 🎯 Band Settings
**Band Mode**
- **1st-2nd** (Default): The primary "tunnel" between most recent levels
- **1st-3rd**: Wider band, more room for price action
- **2nd-3rd**: Band between less immediate levels
- **Disabled**: No bands, lines only
**Band Colors & Borders**
- Customize fill color and border separately
- **Tip**: Keep bands very transparent (90-95% transparency) to avoid obscuring price action
### ⚠️ Proximity Alert Settings
**Enable Proximity Alerts**
- Toggle: Turn on/off the warning system
- When enabled, levels within threshold distance show ⚠️ and turn yellow
**Alert Threshold** (Default: 5.0 points)
- Distance in points to trigger the alert
- **For NQ**: 5-10 points is reasonable
- **For ES**: 2-5 points is reasonable
- **For MES/MNQ**: Scale down proportionally
**Alert Highlight Color**
- The color lines/labels turn when proximity is triggered
- Default: Yellow (high visibility)
### 📋 Table Settings
**Show Table**
- Toggle: Display the dashboard table
**Table Location**
- Top Left, Top Right, Bottom Left, Bottom Right
- Choose based on your chart layout and other indicators
**Text Size**
- Tiny, Small, Normal, Large
- **Recommendation**: Normal for 1080p monitors, Small for 4K
**Show % Distance**
- Toggle: Add percentage distance column to table
- Useful for comparing relative distances across different price ranges
**Show Statistics Row**
- Toggle: Show total count of unmitigated highs/lows
- Format: "📊 15↑ / 12↓" (15 unmitigated highs, 12 unmitigated lows)
- Useful for gauging overall market structure
### ⚡ Performance Settings
**Enable Level Cleanup**
- Automatically remove very old levels to maintain performance
- **Keep on** unless you want unlimited history
**Max Lookback Levels** (Default: 10,000)
- Maximum number of levels to track
- 10,000 ≈ 6+ months of 15-minute bars
- **Increase** if you want more history
- **Decrease** if experiencing performance issues
**Max Boxes Per Band** (Default: 245)
- TradingView limit is 500 total boxes
- With 2 bands, 245 each = 490 total (safe maximum)
---
## Best Practices
### 🎯 Position Management
**1. Scaling In Near Old Levels**
```
Price approaching 5-session-old low:
- First position: 30% size at proximity alert (⚠️)
- Second position: 40% size at exact level
- Third position: 30% size if it shows strong rejection
```
**2. Scaling Out Near Ancient Levels**
```
Holding long position, approaching 8-session-old high:
- Exit 50% at proximity alert (⚠️)
- Exit 30% at exact level
- Trail stop on remaining 20%
```
### 🧠 Trading Psychology Integration
Drawing from principles in *The Mountain Is You*, this indicator helps you:
**1. Recognize Self-Sabotage Patterns**
- **The Premature Entry**: Entering before price reaches your planned level
- **Solution**: Set alerts at unmitigated levels, wait for proximity warnings
- **The Profit-Taking Problem**: Exiting too early from fear
- **Solution**: Identify the next unmitigated level and commit to holding until proximity alert
- **The Loss Holding**: Refusing to exit losing trades
- **Solution**: When price breaks through and mitigates your entry level, it's telling you the structure changed
**2. Building Better Habits**
The color-coded age system trains your brain to:
- Respect levels that have proven themselves over time
- Distinguish between noise (new levels) and structure (old levels)
- Make decisions based on objective data, not fear or greed
**3. Emotional Regulation**
The proximity alerts serve as:
- **Circuit breakers** - Forcing you to re-evaluate before dangerous zones
- **Permission to act** - Giving you objective signals to exit without second-guessing
- **Validation** - Confirming when you're in alignment with market structure
### 📝 Pre-Market Routine
**Daily Setup Checklist:**
1. ✅ Identify the 3 nearest unmitigated highs above current price
2. ✅ Identify the 3 nearest unmitigated lows below current price
3. ✅ Note which are ancient (7+) - these are your "no-go" zones
4. ✅ Check the tunnel width (Δ in status row) - tight or wide?
5. ✅ Set alerts at the 1st high and 1st low for proximity warnings
6. ✅ Plan: "If we go up, I exit at ___. If we go down, I enter at ___."
### 🔄 Timeframe Confluence
**Multi-Timeframe Strategy:**
Run the indicator on **three instances**:
- **15-minute** (short-term structure)
- **1-hour** (intermediate structure)
- **4-hour** (major structure)
**Strong Setup**: When all three timeframes show unmitigated levels converging at the same price zone.
**Example:**
- 15m: Old low at 21,400
- 1H: Ancient low at 21,398
- 4H: Ancient low at 21,395
- **Result**: 21,395-21,400 is a monster support zone
### ⚠️ What This Indicator Doesn't Do
**Not a Crystal Ball**
- It doesn't predict where price will go
- It shows you where price *hasn't been* and how long it's been avoided
- The trading decisions are still yours
**Not an Entry Signal Generator**
- It provides context and structure
- You need to combine it with your entry methodology (price action, indicators, order flow, etc.)
**Not Foolproof**
- Ancient levels get broken
- Proximity alerts can trigger early in strong trends
- The market doesn't "owe" you a reversal at any level
---
## Common Scenarios
### Scenario 1: "Level Cluster Ahead"
**Situation**: You're long at 21,400. The table shows:
- 1st High: 21,425 (2 sessions old)
- 2nd High: 21,428 (3 sessions old)
- 3rd High: 21,435 (6 sessions old)
**Interpretation**: There's a resistance cluster just 25-35 points away. The 6-session-old level is particularly significant.
**Action**:
- Set first profit target at 21,420 (before the cluster)
- Set second target at 21,426 (between 1st and 2nd)
- Trail remaining position, but be ready to exit on rejection at 21,435
**Cave Diving Analogy**: You're approaching an overhead section with limited clearance. Lighten your load (reduce position) before entering.
---
### Scenario 2: "Ancient Level Approaches"
**Situation**: The market is grinding higher. You see ⚠️ appear next to a 9-session-old high at 21,500.
**Interpretation**: This level has survived over a week without being touched. Massive potential liquidity zone.
**Action**:
- If long, this is your absolute exit zone. Take profits before or at level.
- If looking to short, wait for clear rejection (price taps and reverses)
- Don't try to buy the breakout until it clearly breaks and retests
**Cave Diving Analogy**: Your dive computer is beeping - you've reached your planned turn-back depth. No matter how interesting it looks ahead, honor your plan.
---
### Scenario 3: "Mitigated Levels Create New Structure"
**Situation**: Price breaks and mitigates the 1st High. The previous 2nd High becomes the new 1st High.
**Interpretation**: The structure just shifted. What was the 2nd level is now most relevant.
**Action**:
- Watch how price reacts to the newly-mitigated level
- If it holds below (acts as resistance), bearish
- If it reclaims and holds above (acts as support), bullish
- The NEW 1st High is your next target/resistance
**Cave Diving Analogy**: You've passed through a restriction - the cave layout ahead is different now. Update your mental map.
---
### Scenario 4: "Tight Tunnel, Upcoming Breakout"
**Situation**: The Δ in the status row shows 3.25 points (very tight). Bands are converging.
**Interpretation**: Price is consolidating between very close unmitigated levels. Breakout likely.
**Action**:
- Don't try to predict direction
- Set alerts above 1st High and below 1st Low
- When break occurs, trade the retest
- Expect volatility - use wider stops
**Cave Diving Analogy**: You're in a narrow passage. Movement will be sudden and directional once it starts.
---
### Scenario 5: "Imbalanced Structure"
**Situation**: The statistics row shows "📊 22↑ / 7↓"
**Interpretation**: There are many more unmitigated highs than lows. This suggests:
- Price has been declining (hitting lows, leaving highs behind)
- Potential bullish reversal zone (lots of overhead supply mitigated)
- Or continued bearish structure (resistance everywhere above)
**Action**:
- Look at the age of those 22 highs
- If mostly new (0-2 sessions): Just a recent downmove, not significant yet
- If many old/ancient: Strong overhead resistance, be cautious on longs
- Compare to price action: Is price respecting the remaining lows?
**Cave Diving Analogy**: You've swam deeper than your starting point - most of your markers are above you now. Are you planning the ascent or going deeper?
---
## Final Thoughts: The Philosophy
This indicator is built on a simple but powerful principle: **The market has memory, and that memory has weight.**
Every unmitigated level represents:
- Liquidity left behind
- Orders waiting to be filled
- Institutional interest potentially parked
- Psychological significance for participants
The longer a level remains unmitigated, the more "charged" it becomes. When price finally revisits it, something significant usually happens - either a strong reversal or a definitive break.
Your job as a trader isn't to predict which outcome will occur. Your job is to:
1. **Recognize** when you're approaching these charged zones
2. **Respect** them by adjusting position size and risk
3. **React** appropriately based on how price behaves at them
4. **Remember** that ancient levels (like ancient wisdom) deserve extra reverence
The Cave Diving Framework embedded in this indicator serves as a constant reminder: Trading, like cave diving, requires rigorous respect for environmental hazards, meticulous planning, and the discipline to turn back when your limits are reached.
**Every proximity alert is the market asking you**: *"Do you really want to go deeper?"*
Sometimes the answer is yes - when your setup, confluence, and risk management all align.
Often, the answer should be no - and that's the trader avoiding the accident that would have happened to the gambler.
---
### 🎯 Quick Reference Card
**Color System:**
- 🟢 Bright colors = New (0-1 sessions) = Shallow water
- 🟡 Medium colors = Medium (2-3 sessions) = Penetration depth
- 🔴 Dark colors = Old (4-6 sessions) = Deep dive zone
- 🟣 Deep dark colors = Ancient (7+ sessions) = Overhead environment
**Symbols:**
- ↑ ↑↑ ↑↑↑ ↑↑↑↑ ↑↑↑↑↑ = High levels (1st through 5th)
- ↓ ↓↓ ↓↓↓ ↓↓↓↓ ↓↓↓↓↓ = Low levels (1st through 5th)
- ⚠️ = Proximity alert (danger zone)
- 🟢 = Bullish structure
- 🔴 = Bearish structure
- Δ = Tunnel width (distance between 1st high and 1st low)
**Critical Rules:**
1. Never fight ancient levels (7+ sessions)
2. Respect proximity alerts (⚠️)
3. Scale out near old/ancient resistance
4. Wait for confluence when entering
5. Let mitigated levels prove their new role
---
**Remember**: The indicator gives you structure. The trading edge comes from your discipline in respecting that structure.
Trade safe, trade smart, and always know your exit before your entry. 🎯
---
*"You don't become your best self by denying your patterns. You become your best self by recognizing them, understanding them, and choosing differently." - Adapted from The Mountain Is You*
In trading: You don't become profitable by ignoring market structure. You become profitable by recognizing it, understanding it, and choosing your entries accordingly.
Futures Risk-Based Position CalculatorFutures Risk‑Based Position Calculator — Description
This TradingView indicator automatically calculates and displays Entry, Stop Loss (SL), and Take Profit (TP) levels for futures trades based on a fixed dollar‑risk amount.
What it does
Uses your account balance, dollar risk, number of contracts, point value, and tick size to compute how far the stop should be from the entry.
Determines the take‑profit level using a chosen risk‑to‑reward ratio.
Draws three lines on the chart:
Entry line
Stop loss line
Take profit line
Places labels next to the SL and TP lines showing prices and point distances.
Key features
Supports long or short calculation mode.
Configurable line styling:
Width, style (solid/dashed/dotted), color, opacity.
Separate styling for entry, SL, and TP.
Configurable label behavior:
Optional background.
Text color choices.
Adjustable vertical offset to avoid overlapping the lines.
Lines extend left/right by user‑defined bar amounts.
Values are always rounded to the market's tick size.
How levels are calculated
Entry = current close rounded to tick size.
Stop distance (points) = dollarRisk / (contracts × pointValue).
SL = entry − distance (long) or entry + distance (short).
TP = entry + distance × RR (long) or entry − distance × RR (short).
Visual behavior
Lines and labels update only on the last bar to avoid clutter.
Labels show:
SL: price, point distance, and contract count.
TP: price and point distance.
Liquidity Sentiment Profile | LUPENIndicator Guide: Liquidity Sentiment Profile (LSP).
What is the LSP?
The Liquidity Sentiment Profile (LSP) is a "Next-Generation" oscillator designed to look beyond simple price action. While standard indicators (like RSI or MACD) primarily focus on where a candle closes, the LSP analyzes the micro-structure of the entire candle—specifically the relationship between the candle's Body, its Wicks (Shadows), and the Volume.
The Core Philosophy:
Wicks tell the truth: A long lower wick indicates that sellers pushed the price down, but buyers aggressively absorbed that liquidity and pushed it back up.
That is hidden bullish strength.
Volume validates intent: A price move with low volume is noise. A price move (or wick rejection) with high volume is a commitment by institutional players.
The LSP calculates a "Sentiment Score" between -100 and +100 based on these factors.
How to Read the Visuals
The Colors (Intensity)
color: Light Green - Bullish Acceleration. Buyers are in control, and momentum is increasing. This is the ideal time to be in a Long trade.
color: Dark Green - Bullish Deceleration. Buyers are still in control (price is likely rising), but the momentum is fading. This is a warning sign to tighten stop-losses or take profits.
color: Light Red - Bearish Acceleration. Sellers are dominating, and panic is increasing. This is the ideal time to be Short.
color: Dark Red - Bearish Deceleration. Sellers are still in control, but the downward pressure is exhausted. Be careful with new short positions.
The Lines & Fills
The Main Line: The actual LSP sentiment value.
The Yellow Signal Line: A smoothed average of the sentiment.
The Core Fill: The colored area between the Main Line and the Signal Line. When this area "glows", the trend is strong. When it dims (Dark), the trend is weak. Bearish Deceleration. Sellers are still in control, but the downward pressure is exhausted. Be careful with new short positions.
The Lines & Fills
The Main Line: The actual LSP sentiment value.
The Yellow Signal Line: A smoothed average of the sentiment.
The Core Fill: The colored area between the Main Line and the Signal Line. When this area "glows" (Neon), the trend is strong. When it dims (Dark), the trend is weak.
How to Use It (Trading Strategies)
Strategy A: The "Power Cross" (Trend Entry)
Use this for entering trends when the market wakes up.
Long Entry: Wait for the LSP line to cross ABOVE the Yellow Signal Line.
Confirmation: The fill color must turn Neon Green.
Short Entry: Wait for the LSP line to cross BELOW the Yellow Signal Line.
Confirmation: The fill color must turn Neon Red.
Strategy B: The "Absorption" Play (Reversals)
This is where the LSP shines. It detects when liquidity is being absorbed before price turns.
Bullish Absorption: The Price makes a Lower Low, but the LSP makes a Higher Low. This happens because the LSP detects the Volume on the Lower Wicks (buyers absorbing selling pressure). This is a high-probability reversal signal.
Bearish Absorption: The Price makes a Higher High, but the LSP makes a Lower High. The volume on the Upper Wicks suggests sellers are absorbing the buy orders.
Strategy C: The "Dimming" Exit (Risk Management)
Don't wait for the price to crash to exit a trade.
If you are in a Long trade (Neon Green) and the color instantly shifts to Dark Green, it means the "fuel" is running out. Consider taking partial profits or moving your Stop Loss to break even.
Standard oscillators (like RSI) often give false signals during strong trends (showing "Overbought" while price keeps going up). The LSP avoids this because it weights Volume and Wicks. If price goes up and volume increases, the LSP stays Neon Green, telling you the move is genuine, not just overextended.
[SM-021] Gaussian Trend System [Optimized]This script is a comprehensive trend-following strategy centered around a Gaussian Channel. It is designed to capture significant market movements while filtering out noise during consolidation phases. This version (v2) introduces code optimizations using Pine Script v6 Arrays and a new Intraday Time Control feature.
1. Core Methodology & Math
The foundation of this strategy is the Gaussian Filter, originally conceptualized by @DonovanWall.
Gaussian Poles: Unlike standard moving averages (SMA/EMA), this filter uses "poles" (referencing signal processing logic) to reduce lag while maintaining smoothness.
Array Optimization: In this specific iteration, the f_pole function has been refactored to utilize Pine Script Arrays. This improves calculation efficiency and rendering speed compared to recursive variable calls, especially when calculating deep historical data.
Channel Logic: The strategy calculates a "Filtered True Range" to create High and Low bands around the main Gaussian line.
Long Entry: Price closes above the High Band.
Short Entry: Price closes below the Low Band.
2. Signal Filtering (Confluence)
To reduce false signals common in trend-following systems, the strategy employs a "confluence" approach using three additional layers:
Baseline Filter: A 200-period (customizable) EMA or SMA acts as a regime filter. Longs are only taken above the baseline; Shorts only below.
ADX Filter (Volatility): The Average Directional Index (ADX) is used to measure trend strength. If the ADX is below a user-defined threshold (default: 20), the market is considered "choppy," and new entries are blocked.
Momentum Check: A Stochastic RSI check ensures that momentum aligns with the breakout direction.
3. NEW: Intraday Session Filter
Per user requests, a time-based filter has been added to restrict trading activity to specific market sessions (e.g., the New York Open).
How it works: Users can toggle a checkbox to enable/disable the filter.
Configuration: You can define a specific time range (Default: 09:30 - 16:00) and a specific Timezone (Default: New York).
Logic: The strategy longCondition and shortCondition now check if the current bar's timestamp falls within this window. If outside the window, no new entries are generated, though existing trades are managed normally.
4. Risk Management
The strategy relies on volatility-based exits rather than fixed percentage stops:
ATR Stop Loss: A multiple of the Average True Range (ATR) is calculated at the moment of entry to set a dynamic Stop Loss.
ATR Take Profit: An optional Reward-to-Risk (RR) ratio can be set to place a Take Profit target relative to the Stop Loss distance.
Band Exit: If the trend reverses and price crosses the opposite band, the trade is closed immediately to prevent large drawdowns.
Credits & Attribution
Original Gaussian Logic: Developed by @DonovanWalll. This script utilizes his mathematical formula for the pole filters.
Strategy Wrapper & Array Refactor: Developed by @sebamarghella.
Community Request: The Intraday Session Filter was added to assist traders focusing on specific liquidity windows.
Disclaimer: This strategy is for educational purposes. Past performance is not indicative of future results. Please use the settings menu to adjust the Session Time and Risk parameters to fit your specific asset class.
ORB Strategy: Extensions & Custom SL (EOD & Live Lines)That's a great request. Since you've now built a complex Pine Script Strategy with several user-configurable risk management, targeting, and exit options, the description should focus on the systematic rules used for entering, managing, and exiting trades.
Here is a clear, written description of the trading strategy you have built:
Trading Strategy Description: ORB Extension Breakout with Custom Stop, Live Tracking, and EOD Exit
This strategy is a systematic, momentum-based system designed for intraday trading. It operates on the principle of an Opening Range Breakout (ORB), utilizing the initial market consolidation to project high-probability targets, while offering multiple methods for managing risk and enforcing a mandatory end-of-day closure.
1. Market Identification (The Opening Range)
The strategy first defines the market's initial boundaries and volatility:
Session Window: The strategy calculates the Opening Range (OR) over a user-defined time period (default: 9:30 AM to 10:30 AM New York Time).
ORB Levels: Two key price levels are established and locked once the time window closes:
Wick High/Low: The absolute highest and lowest prices of the session. These serve as the entry trigger lines.
Body High/Low (Shaded Range): The highest and lowest open/close prices of the session. The height of this range is used as the basis for calculating all targets and stops.
2. Entry Rule (The Breakout)
The strategy waits passively for a breakout that confirms direction and ensures the move has not yet reached its immediate target.
Trigger Condition: A trade is signaled when a candle closes either:
Above the Wick High (for a Long entry).
Below the Wick Low (for a Short entry).
Constraint (Fresh Breakout): The entry is invalidated if the breakout candle's price action (High for Long, Low for Short) has already touched or surpassed the projected Take Profit (0.5 Extension) level before the candle closes.
Execution: The entry is a Market Order executed on the candle that meets the trigger conditions, subject to a user-defined Entry Delay (default 0 bars).
Direction Control: The user can select to trade Long Only, Short Only, or Both.
3. Exit and Risk Management
All trades are placed with simultaneous Take Profit and Stop Loss orders (a bracket order) upon entry.
A. Take Profit (TP)
The Take Profit is set at the 0.5 Extension of the Shaded Range (Body Range).
Calculation: The distance from the Body High/Low to the TP level is exactly 50% of the total height of the Shaded Range.
B. Stop Loss (SL)
The Stop Loss is dynamically calculated based on a user-selected method for risk control:
Range 0.5 (Body Range): The SL is placed an equal distance (0.5 times the Body Range height) outside the opposite side of the Body Range.
ATR Multiple: The Stop Loss distance is calculated as a user-defined Multiplier times the Average True Range (ATR).
Recent Swing Low/High: The Stop Loss is placed based on a structural low (for Long) or high (for Short) within a user-defined lookback period.
C. End-of-Day (EOD) Exit
Any open position is forced closed at the market price if it is still open when the user-defined closing time (default: 16:00 HHMM) is reached. This prevents carrying intraday risk overnight.
4. Visualization
The strategy includes comprehensive visual cues for analysis:
ORB Drawing: Displays the Wick High/Low and the shaded Body Range.
Breakout Signals: Highlights the specific bar where the validated entry signal occurs.
Closed Trades: Draws persistent lines for the Entry and Exit prices of the last few closed trades.
Live Open Trades: Draws persistent lines for the current Entry Price, active Take Profit Level, and active Stop Loss Level for any open position.
Momentum by Trading BiZonesSqueeze Momentum Indicator with EMA
Overview
The Squeeze Momentum Indicator with EMA is a powerful technical analysis tool that combines the original Squeeze Momentum concept with an Exponential Moving Average (EMA) overlay. This enhanced version helps traders identify market momentum, volatility contractions (squeezes), and potential trend reversals with greater precision.
Core Concept
The indicator operates on the principle of volatility contraction and expansion:
Squeeze Phase: When Bollinger Bands move inside the Keltner Channel, indicating low volatility and potential energy buildup
Expansion Phase: When momentum breaks out of the squeeze, signaling potential directional moves
Key Components
1. Squeeze Momentum Calculation
Formula: Momentum = Linear Regression(Close - Average Price)
Where Average Price = (Highest High + Lowest Low + SMA(Close)) / 3
Visualization: Histogram bars showing positive (green) and negative (red) momentum
Zero Line: Represents equilibrium point between buyers and sellers
2. EMA Overlay
Purpose: Smooths momentum values to identify underlying trends
Customization:
Adjustable period (default: 20)
Toggle on/off display
Customizable color and line thickness
Cross Signals: Buy/sell signals when momentum crosses above/below EMA
3. Volatility Bands
Bollinger Bands (20-period, 2 standard deviations)
Keltner Channels (20-period, 1.5 ATR multiplier)
Squeeze Detection: Visual background shading when BB are inside KC
Trading Signals
Buy Signals (Green Upward Triangle)
Momentum histogram crosses ABOVE EMA line
Occurs during or after squeeze release
Confirmed by expanding histogram bars
Sell Signals (Red Downward Triangle)
Momentum histogram crosses BELOW EMA line
Often precedes market downturns
Watch for increasing negative momentum
Squeeze Warnings (Gray Background)
Market in low volatility state
Prepare for potential breakout
Direction indicated by momentum bias
Indicator Settings
Main Parameters
Length: Period for calculations (default: 20)
Show EMA: Toggle EMA visibility
EMA Period: Smoothing period for EMA
Visual Settings
Histogram color-coding based on momentum direction
EMA line color and thickness
Signal marker size and visibility
Squeeze zone background display
Practical Applications
Trend Identification
Uptrend: Consistently positive momentum with EMA support
Downtrend: Consistently negative momentum with EMA resistance
Range-bound: Oscillating around zero line
Entry/Exit Points
Conservative Entry: Wait for squeeze release + EMA crossover
Aggressive Entry: Anticipate breakout during squeeze
Exit: Opposite crossover or momentum divergence
Risk Management
Use squeeze zones as warning periods
EMA crossovers as confirmation signals
Combine with support/resistance levels
Advanced Interpretation
Momentum Strength
Strong Bullish: Tall green bars above EMA
Weak Bullish: Short green bars near EMA
Strong Bearish: Tall red bars below EMA
Weak Bearish: Short red bars near EMA
Divergence Detection
Price makes higher high, momentum makes lower high → Bearish divergence
Price makes lower low, momentum makes higher low → Bullish divergence
Squeeze Characteristics
Long squeezes: More potential energy
Frequent squeezes: Choppy market conditions
No squeezes: High volatility, trending markets
Recommended Timeframes
Scalping: 1-15 minute charts
Day Trading: 15-minute to 4-hour charts
Swing Trading: 4-hour to daily charts
Position Trading: Daily to weekly charts
Best Practices
Confirmation
Use with volume indicators
Check higher timeframe direction
Wait for candle close confirmation
Filtering Signals
Ignore signals during extreme volatility
Require minimum bar size for crossovers
Consider market context (news, sessions)
Combination Suggestions
With RSI: Confirm overbought/oversold conditions
With Volume Profile: Identify high-volume nodes
With Support/Resistance: Key level reactions
With Trend Lines: Breakout confirmations
Limitations
Lagging indicator (based on past data)
Works best in trending markets
May give false signals in ranging markets
Requires proper risk management
Conclusion
The Squeeze Momentum Indicator with EMA provides a comprehensive view of market dynamics by combining volatility analysis, momentum measurement, and trend smoothing. Its visual clarity and customizable parameters make it suitable for traders of all experience levels seeking to identify high-probability trading opportunities during volatility contractions and expansions.






















