Pine Script®策略
指標和策略
Nifty Previous Day Last 15min Liquidity SweepThis Nifty strategy targets liquidity sweeps of the previous day's last 15-minute candle (PDH/PDL zone), entering on reversal confirmation for high-probability intraday trades. Use on 15min NIFTY charts during market hours (9:15 AM - 3:30 PM IST).
Pine Script®策略
ICT HARDIKThis strategy script identifies liquidity sweeps, MSS, and FVGs strictly within the 10-11 AM EST Killzone. It automates entries, places SL beyond swept levels, and targets 1:2 R:R for high-probability trades matching gold's volatility.
Pine Script®策略
Stoch RSI + RSI Auto Buy Bot (XAUUSD 20 USD SL + Break-Even) WS Strategy Name
Stochastic RSI + RSI Auto Buy Bot (XAUUSD) with $20 Stop Loss & Break-Even
Market
Instrument: XAUUSD (Gold)
Direction: Buy-only (long bias)
Typical Timeframes: M5 – M15 (can be adapted to M30)
Gold tends to respect momentum reversals and overbought/oversold conditions well on lower timeframes, which is why RSI-based confirmation works nicely here.
Indicators Used
RSI (Relative Strength Index)
Period: Commonly 14
Used to identify oversold conditions and momentum shift
Stochastic RSI
Used for precise entry timing
Confirms RSI signals and avoids early entries
Entry Conditions (BUY)
All conditions must align:
RSI Condition
RSI is below 30 (oversold zone)
RSI starts turning upward or crosses above a confirmation level (e.g. 30–35)
Stochastic RSI Condition
Stoch RSI is in oversold zone (below 20)
%K crosses above %D (bullish crossover)
Market Context (Filter)
Prefer price near support, previous low, or after a pullback
Avoid buying during high-impact news spikes
Once these conditions align, the bot executes a market buy.
Risk Management
This is the backbone of the strategy.
Stop Loss
Fixed $20 Stop Loss
Designed to survive normal XAUUSD volatility while protecting capital
Break-Even Rule
When price moves X pips / dollars into profit (example: +$15 or +1R):
Stop Loss is automatically moved to entry price
Trade becomes risk-free
This prevents winning trades from turning into losers and allows the bot to let profits run psychologically and mechanically.
Take Profit Logic
One of the following (depending on bot setup):
Dynamic TP
Exit when RSI reaches overbought (65–70)
Or when Stoch RSI exits overbought
Partial Close (Optional)
Close part of the position at 1R
Let the rest run with break-even or trailing stop
Why This Strategy Works
RSI identifies exhausted sellers
Stoch RSI provides precise timing
Fixed SL keeps losses controlled
Break-even protects capital
Gold’s volatility amplifies clean momentum reversals
This combo filters weak entries and focuses only on high-probability bounce trades.
Pine Script®策略
Momentum + S/D + FVG Strategy Index (AstroNivesh)Momentum + S/D + FVG Strategy (Low-TF Anti-SL) + ADX Regime + RSI Divergence is a trend-following strategy built to reduce “choppy timeframe stop-loss hits” by combining momentum confirmation + location filtering + regime detection + divergence-based reversal protection.
Access / Support
Website: www.astronivesh.com
Telegram: t.me
What it does
This strategy looks for high-probability continuation trades (not random signals) using four layers:
1) Momentum filter (Trend + Strength)
A trade is considered only when momentum is real:
EMA Fast vs EMA Slow defines direction (trend bias)
EMA Slow slope confirms trend is actually moving (reduces sideways spam)
RSI filter confirms momentum (adaptive RSI option compares RSI vs RSI-MA)
Manual ADX confirms strength and expansion (ADX must be strong + rising)
Volume filter avoids weak moves (requires above-average participation)
2) Market Regime filter (ADX + DI)
To avoid entries during chop:
Regime rule: ADX must be above a “chop threshold” and rising for N bars
DI confirmation (optional): longs prefer +DI > −DI, shorts prefer −DI > +DI
3) Location filter (Supply/Demand + Fair Value Gap)
Instead of taking every momentum bar, the strategy prefers entries at meaningful price locations:
Demand/Supply zones (pivot-based) for better risk placement
Fair Value Gap (FVG) as an imbalance zone filter
(optional retest requirement to avoid chasing)
Note: Zones/FVG are used internally for logic; visuals can be kept clean (no lines) if you prefer.
4) RSI Divergence protection (Accuracy layer)
Divergence is used as a smart filter, not a random trigger:
Blocks entries when opposite divergence appears (prevents entering near reversals)
Optional early exit when opposite divergence forms while in a trade
Entries
Long entry when:
bullish momentum is active
ADX regime is trending (not chop)
DI confirms (optional)
location filter passes (near demand and/or bullish FVG conditions)
no bearish divergence (if divergence blocking enabled)
cooldown allows a new signal
Short entry is the opposite logic.
Exits (choose from settings)
Risk control is ATR-based, so it adapts across symbols and volatility.
Stop Loss
SL = ATR × slATR
Take-Profit Modes
TP1 + Runner: partial profit at TP1, rest managed by trailing/exit rules
TP1 + TP2 + Runner: two partial exits + runner
No fixed TP: only stop + trailing/exit rules
Exit Modes (selectable)
ATR Trail + Reversal (recommended): trailing stop + early exit on reversal clues
Chandelier (HH/LL): trend-following stop from extremes
EMA Cross Exit: exits when EMAs flip
Opposite Signal Exit: exits when opposite entry setup appears
Time Stop + ATR Trail: caps holding time on noisy lower TF
Optional reversal exit uses:
RSI cross of 50 against your trade
EMA crossover against your trade
ADX weakening below a threshold
plus optional divergence exit
Visuals
Momentum Phase Background:
Green = bullish momentum phase, Red = bearish momentum phase
(use “Phase confirm bars” to reduce low-TF flicker)
Best use
Designed for 5m–15m and liquid markets (Index futures, large caps, liquid crypto).
For noisy charts: increase Min bars between signals, increase ADX chop threshold, and enable DI confirm + divergence block.
Disclaimer
This strategy is for educational/backtesting purposes. Markets involve risk. Always forward-test and manage position sizing.
Access / Support
Website: www.astronivesh.com
Telegram: t.me
Pine Script®策略
Stochastic RSI -Assisit根据RSI 计算出当前的背离指数,用于辅助交易员对方向做出判断。
Calculate the current divergence index based on RSI to assist traders in making directional judgments.
Pine Script®策略
Momentum + S/D + FVG Strategy (Low-TF Anti-SL)AstroNivesh Momentum PRO — S/D + FVG Strategy
This strategy is designed to reduce “too many signals” on lower timeframes by combining:
Momentum confirmation (EMA trend + RSI strength + ADX trend strength + Volume filter)
Location-based entries using Supply & Demand zones
Fair Value Gap (FVG) + optional retest to avoid chasing moves
Multiple exit modes to fit your trading style
How it works
Entries are only taken when momentum aligns with a high-probability location:
Longs: Momentum + price inside/near Demand OR a valid Bullish FVG (optionally retested)
Shorts: Momentum + price inside/near Supply OR a valid Bearish FVG (optionally retested)
Exit & Risk Management
Choose your preferred trade management from settings:
ATR Trail + Reversal (balanced)
Chandelier (HH/LL) (trend-friendly)
Time Stop + ATR Trail (best for low timeframe chop)
EMA Cross Exit
Opposite Signal Exit
Take-profit modes:
TP1 + Runner
TP1 + TP2 + Runner
Runner only (no fixed TP)
Best starter settings (Low TF)
Enable Supply/Demand + FVG Retest
Increase Min bars between signals
Use Time Stop + ATR Trail for choppy sessions
Access / Buy
This is part of the AstroNivesh trading toolkit.
To buy or get setup help, contact us on Telegram:
t.me
Disclaimer: This is not financial advice. Backtest and paper-trade before using real capital.
Pine Script®策略
ICT Opening Gap - Confirmed Close w/ BreakevenThis Strategy uses an adjustable counter of candle closes that cross New Day Opening Gaps or New Week Opening Gaps. An entry is taken on the candle close after your choice on the number of crosses. I have included an adjustable time based exit, an exact adjustable exit (number of ticks) and an optional break even with adjustable offset for commissions. No information or signals generated with this strategy is investment advice. Script was created with Gemini.
Pine Script®策略
XAUUSD 1-Minute Scalping Strategy - Advanced Strategy for ExitsThis is a **mean-reversion scalping strategy** optimized for **XAUUSD on the 1-minute (or the 5-minute) timeframe**. It combines a classic **RSI(14)** oscillator with an optional **200-period EMA trend filter** to identify short-term overextended conditions in gold price action, while enforcing fixed, conservative exits to maintain strict risk control.
### Core Logic & Why This Combination:
The strategy enters counter-trend when RSI reaches extreme levels (below 30 for longs, above 70 for shorts), capturing quick snap-backs that frequently occur in gold's intraday volatility.
- **RSI(14)** acts as the primary momentum filter — detecting oversold/overbought exhaustion.
- The **200 EMA trend filter** (enabled by default) adds directional context: longs are allowed only when price is above the EMA (overall uptrend bias), shorts only below it (downtrend bias). This reduces whipsaws in strong trending sessions and improves trade quality without overly restricting opportunities.
- Disabling the trend filter allows pure mean-reversion trading (useful in ranging/Asian sessions), but enabling it is strongly recommended for better expectancy in most market conditions.
Entries occur only when flat (no pyramiding), keeping the system clean and directional.
### Exit Rules (Fixed at Entry):
- **Take Profit**: +10 pips (0.10 in XAUUSD price terms)
- **Stop Loss**: -5 pips (0.05 in price terms)
- **Risk:Reward** = 1:2
Exits are **set once on the entry bar** using limit/stop orders — this prevents dynamic recalculation and mimics real broker behavior more closely. The 2:1 RR gives the strategy mathematical edge even with moderate win rates.
### Performance & Realism Guidelines:
This strategy is tuned for **high-frequency scalping** on gold, which typically produces hundreds to thousands of trades per year on 1-minute data.
Recommended **backtest/publication settings** (update these in the strategy properties before publishing):
- **Initial Capital**: $10,000 – $50,000 (realistic for retail prop/swing traders; the script defaults to $1,000,000 only for visual scaling — change it!)
- **Order Size**: Fixed 0.10–0.50 lots (adjust according to account size)
- **Commission**: 3–7 USD per round-turn lot (typical ECN/raw-spread gold commission on brokers like IC Markets, Pepperstone, etc.)
- **Slippage**: 2–5 ticks (≈0.02–0.05 in price) — gold can be slippery during news/volatility spikes on 1-minute charts
- **Pyramiding**: 1 (default — no stacking)
- **Dataset**: At minimum 1–3 years of 1-minute data (aim for >500–1000 closed trades for statistical significance)
With realistic costs applied, expect win rate ≈55–70%, profit factor >1.4–1.8 in favorable periods, but results vary significantly across trending vs. ranging regimes and news events.
**Risk per trade** remains very controlled (typically <0.5–1.5% depending on SL distance and position sizing) — never exceeds sustainable levels.
### Important Usage Notes:
- Check thoroughly the curve-fitted back tests.
- Gold is extremely volatile on 1-minute charts; check major news (NFP, FOMC, FED) unless you widen SL/TP dynamically (you can manually implement it here).
- Always forward-test on demo first and use proper position sizing.
- The built-in dashboard shows live stats (net P&L, win rate, profit factor, current RSI, position status, etc.) for quick monitoring.
- Restricted Sample Size for Precision
Happy scalping — trade responsibly! 🚀
Pine Script®策略
London SR Cleaner WR (TP 0.20) BY MANOLASSupport & Resistance Break & Close – London Session Scalp Strategy
This strategy is based on identifying key Support and Resistance levels derived from the previous London session high and low. The approach focuses on high-probability breakout and retest scenarios using price action confirmation.
The system waits for a confirmed breakout (candle close) above resistance or below support. No trades are taken on the first touch of the level. After the breakout, the strategy requires a retest of the level followed by a strong rejection candle (wick rejection) before entering the market.
Trades are executed only after confirmation to avoid false breakouts and liquidity sweeps. The strategy is designed primarily for short-term intraday scalping, targeting small, consistent gains (approximately 0.20% per trade).
Risk management is applied by placing stop loss beyond the rejection candle structure, while limiting trades to a maximum of two per day to maintain discipline and avoid overtrading.
The strategy performs best during the London session due to higher liquidity and cleaner price action, particularly on instruments such as XAUUSD.
Pine Script®策略
Ethical Fairness Trend-FVG-Structure-QQE Strategy v3This script is provided for educational and research purposes only.
It does not constitute financial advice, trading signals, or investment recommendations.
Users should conduct their own analysis and manage risk independently.
Access requests are reviewed manually.
The author does not provide trade alerts, profit guarantees, or external services.
Pine Script®策略
HAWAXXX MNQ 9h30The strategy observes the first Nasdaq impulse at the opening, waits for a clean pullback in the Opening Range, then intelligently scales up to 3 micros, only on the same day, with perfectly synchronized alerts.
Pine Script®策略
Ichimoku Ultra-TrendIchimoku Ultra-Trend is a highly optimized trend-following strategy designed to capture major market movements while filtering out noise.
Unlike traditional Ichimoku strategies that rely solely on the TK Cross (Tenkan/Kijun), this script utilizes the often-overlooked power of the Chikou Span (Lagging Span) as a primary breakout trigger, combined with a triple-layer trend filter system.
🌊 The "Zen Mode" Philosophy
_______________________________________
This version (V15) introduces "Zen Mode" visualization. We have removed the cluttered background stripes and replaced them with discrete, high-precision markers:
Neon Purple Dots (Origins): Mark the exact moment the Chikou Span broke through the Cloud 26 periods ago. This explains the "Why" behind every trade signal shown on the chart.
Trend Candles: The entire candle anatomy (Body, Wick, Border) changes color dynamically based on the trend status (Neon Purple for Bullish, Dark Violet for Bearish).
Clean Chart: No unnecessary noise. Just price action and signals.
🚀 Strategy Logic
_______________________________________
1. The "Triple Filter" Trend System
Before looking for entries, the market must pass three strict conditions. For a LONG setup:
Price must be above the Kumo Cloud (Future Sentiment).
Price must be above the EMA 172 (Long-Term Baseline).
Price must be above the SMA 50 (Medium-Term Momentum - Optional).
This ensures we only trade in the direction of the dominant flow.
2. The "Chikou Breakout" Trigger
Instead of waiting for a lagging TK Cross, we enter when the Chikou Span (Close price shifted back 26 bars) breaks through the Cloud of the past.
This signal often precedes a major explosive move.
It confirms that current momentum has truly overcome historical resistance.
3. The "Dip Re-Entry" Mechanism
If the trend is strong (Tenkan > Kijun), the strategy will add positions (pyramiding or re-entry) when price pulls back to the Tenkan-sen and bounces. This maximizes profit during sustained trends.
4. Smart Exit & Risk Management
Trend Exit: Positions are closed when the Tenkan-sen crosses below the Kijun-sen (Trend weakness).
Split Stop Loss: Independent Stop Loss controls for Long and Short positions (Default 3.5%).
⚙️ Settings & Optimization
_______________________________________
The default settings are optimized based on extensive backtesting on the 4H timeframe for crypto markets (BTC), but can be adapted for other assets:
Strategy Settings:
Tenkan-sen: 17
Kijun-sen: 180 (Slower for better trend riding)
Senkou Span B: 160
Displacement: 26 (Classic)
EMA Filter: 172
Risk Management:
Separate Enable/Disable toggles for SL Long and SL Short.
Adjustable % for each side.
Disclaimer:
This script is for educational and research purposes only. Past performance does not guarantee future results. Use this strategy at your own risk and always practice proper risk management. The "Zen Mode" signals in the past (dots) are visual representations of the lagging span logic and show where the condition was met historically.
Pine Script®策略
Swing Strategy Feature Set H [theEccentricTrader]█ OVERVIEW
This swing strategy is part of a broader research and exploration framework designed to encourage users to experiment with a variety of technical concepts and evaluate the comparative effectiveness of different strategy configurations. For example, users can first configure a core strategy as a benchmark, then iteratively test a range of feature configurations as additional entry conditions and compare their performance against one another and against the core strategy.
Feature Set H includes concepts beginning with the letter "H" and forms part of a larger swing strategy suite that covers a wide range of technical concepts. The objective of the suite is not curve-fitting, but rather structured experimentation, exploration and statistical validation (or invalidation) of technical concepts.
Concepts exclusive to the feature set are as follows:
Harmonic Patterns
Hilbert Transform
Hull Moving Average
█ OPERATIONAL
Initial Capital
The initial capital is defined as a monetary value denominated in a given base currency.
The default initial capital is set to 100,000.
The default base currency is set to the selected symbol's default base currency.
Users can adjust the initial capital and select an alternative base currency via strategy Settings/Properties.
Risk as Percentage of Equity
The equity is defined as the sum of initial capital, net profit and open profit.
The risk is defined as a percentage of equity per-trade. As a result, net profit outcomes are subject to compounding effects over time.
The default risk is set to 1% of equity.
Users can adjust the strategy's per-trade risk via strategy Settings/Inputs/STRATEGY.
For further information on how the risk is applied in practice, refer to the position sizing section below.
Unit of Value
The unit of value is defined as a decimal precision factor that converts user-defined point or pip distances into actual price units used by the selected symbol.
Different symbols express price movement using different conventions. For example, some symbols are quoted directly in whole price points, while others use pips or fractional point increments. The unit of value provides a normalisation layer that allows all distance-based logic in the strategy to operate consistently across symbols.
Examples:
A unit of value of 1 corresponds to a price increment of 1.0.
A unit of value of 10 corresponds to a price increment of 0.1.
A unit of value of 100 corresponds to a price increment of 0.01.
A unit of value of 1000 corresponds to a price increment of 0.001.
A unit of value of 10000 corresponds to a price increment of 0.0001.
Users should consult their broker’s published symbol specifications to confirm how price movement is defined for the symbols they intend to backtest. Incorrect configuration of the unit of value may result in misaligned stop distances, targets and/or risk calculations.
The default unit of value is set to 1.
Users can adjust the unit of value via strategy Settings/Inputs/STRATEGY.
Stop Buffer
The stop buffer is defined as the number of points or pips beyond a stop loss level required for the level to be considered clearly breached.
The default stop buffer is set to 0 points/pips.
Users can adjust the stop buffer via strategy Settings/Inputs/STRATEGY.
Risk Range
The risk range is defined as the difference between the entry price and the stop loss price (inclusive of the stop buffer) for any given trade.
Position Sizing
Position sizing determines the quantity of contracts, shares or units opened for each trade based on the user-defined risk and the selected symbol’s pricing structure.
"syminfo.pointvalue" is a built-in Pine Script variable that defines the number of underlying units contained within a single contract for any given symbol, and is critical for accurate position size calculations.
The position size is calculated as follows:
The risk range is multiplied by the syminfo.pointvalue to convert the price movement into its monetary equivalent.
The user-defined risk amount (expressed as a percentage of equity) is divided by this monetary risk per unit to determine the position size.
This ensures that each trade risks a consistent proportion of account equity regardless of point or pip based quoting conventions, symbol price scale or contract specifications.
While the strategy targets a fixed percentage of equity risk per-trade, the exact risk applied cannot always be matched precisely due to symbol-specific constraints such as contract sizing and margin requirements. In these cases, the strategy opens the largest permissible position that does not violate operational constraints, resulting in a realised risk that is as close as possible to the user-defined risk without exceeding it.
For further information on the syminfo.pointvalue variable, please refer to:
www.tradingview.com
Margin
The margin is defined as the minimum percentage of a position’s notional value that must be covered by the strategy’s available equity in order for TradingView's strategy tester to simulate opening and maintaining that position. For example, a margin setting of 25% means the simulated account must hold equity equal to at least 25% of the position’s notional value in order to enter or maintain that trade, the remaining 75% is considered provided by the simulated broker.
A lower margin percentage allows the account to open larger positions relative to its equity, because the required equity portion is smaller. Conversely, a higher margin percentage demands more of the account's equity be committed to any given position.
When the account’s equity falls below the required margin, the strategy tester emulates a margin call event, in which the broker emulator forcibly closes or reduces positions so that remaining positions no longer exceed available equity relative to the margin requirement. This behaviour is documented as part of TradingView’s margin/leverage feature for strategies.
Margin settings in a strategy are used solely for simulation purposes and do not automatically match any broker’s real-world margin requirements (which can vary by broker, asset class and symbol). Users should consult their broker’s published specifications for further details.
The default margin is set to 25% for both long and short positions.
Users can adjust the margin for long and short positions independently via strategy Settings/Properties/MARGIN.
For further information on the strategy tester's margin functionality, please refer to:
www.tradingview.com
www.tradingview.com
Pyramiding
The pyramiding count is defined as the maximum number of open positions permitted at any one time. TradingView's strategy tester does not facilitate hedging, as such, long entries will close any open short positions and short entries will close any open long positions.
The default pyramiding count is set to 100.
Users can adjust the pyramiding count via strategy Settings/Properties.
For further information on TradingView's strategy tester and broker emulator, please refer to:
www.tradingview.com
Spread
The spread is defined as the difference between a given symbol's bid (buy) price and ask (sell) price.
Typical spreads vary by broker and symbol. Some brokers offer fixed spreads on certain symbols, while others offer variable spreads that fluctuate with market conditions. Users should consult their broker's published specifications for further details.
Commission
The commission is defined as a transaction cost applied by a broker and may be expressed as a percentage of position size, a per-contract fee or a fixed fee per-transaction.
Commission structures vary by broker and symbol. Some brokers charge no explicit commission and instead generate revenue through the spread or other indirect sources, while others will typically apply one of the three aforementioned commission types, depending on the product offered. Users should consult their broker's published specifications for further details.
The default commission is set to 0.005% of position size.
Users can select and adjust the commission type via strategy Settings/Properties/COST SIMULATION.
█ CORE STRATEGY
Green and Red Candles
A green candle is defined as a candle that closes at or above its open price and a red candle is defined as a candle that closes below its open price.
Swing Highs and Swing Lows
A swing high is defined as a green candle, or a series of consecutive green candles, followed by a single red candle that completes the swing and forms the peak.
A swing low is defined as a red candle, or a series of consecutive red candles, followed by a single green candle that completes the swing and forms the trough.
Peak and Trough Prices
The peak price of a complete swing high is either the high of the red candle that completes the swing high or the high of the preceding green candle, depending on which is higher.
The trough price of a complete swing low is either the low of the green candle that completes the swing low or the low of the preceding red candle, depending on which is lower.
Fixed Reward-to-Risk
Fixed reward-to-risk is defined as a user-defined reward multiple for a given unit of risk.
Variable Reward-to-Risk
Variable reward-to-risk is defined as a path-dependent reward multiple for a given unit of risk.
Swing High Swing Low (SHSL) Strategy
The SHSL strategy uses swing lows for core long entry conditions and swing highs for core short entry conditions. The strategy is designed for standard OHLC candlestick charts only and will not behave as intended on other chart types.
All entries are processed at candle close and use the candle close price for the entry price.
Long stop losses are anchored to the most recent trough and short stop losses are anchored to the most recent peak.
Users can choose between long-only and short-only configurations, or alternatively simulate trades in both directions (long-short). However, when the "Both" option is selected, long entries will close any open short positions and short entries will close any open long positions (as mentioned in the pyramiding sub-section above). This can and will result in variable reward-to-risk outcomes.
The default direction is set to "Long" for a long-only configuration.
The default exit type is set to "Target" for a fixed reward-to-risk configuration.
Long targets are determined by adding a user-defined multiple of the risk range to the entry price and short targets are determined by subtracting a user-defined multiple of the risk range from the entry price.
Even when using a fixed reward-to-risk configuration, realised reward-to-risk outcomes may vary due to market gaps, particularly when positions are held across session boundaries or market closures. Gaps can cause stop losses or exits to be executed at prices materially different from those implied by the strategy’s static distance calculations. Users who wish to minimise gap-related variability may consider applying the close at end of session filter (see core filters section below), accepting that this introduces its own form of reward-to-risk variability.
The default reward-to-risk is set to 1.
Users can adjust strategy parameters via strategy Settings/Inputs/STRATEGY. Selecting a non-target exit type removes profit targets and renders the reward-to-risk input inactive.
Trailing Stop Loss
A trailing stop loss is defined as an exit type that dynamically moves a stop loss level in a favourable direction when a predefined condition is met. For example, a predefined point move or the formation of a higher trough or lower peak.
Risk Range Trailing Stop Loss
The risk range trailing stop loss is defined as a trailing stop mechanism that activates once price has moved favourably by one full risk range. Upon activation, the stop loss is moved to breakeven and subsequently trails favourable price movement by the risk range into profit.
Users can apply this exit type by selecting "Trail" via strategy Settings/Inputs/STRATEGY.
Trend Trailing Stop Loss
The trend trailing stop loss is defined as a trailing stop mechanism that dynamically moves a stop loss level to newly formed higher troughs (for longs) or lower peaks (for shorts).
Users can apply this exit type by selecting "Trend Trail" via strategy Settings/Inputs/STRATEGY.
Candle Trailing Stop Loss
The candle trailing stop loss is defined as a trailing stop mechanism that dynamically moves a stop loss level to newly formed higher candle lows (for longs) or lower candle highs (for shorts).
Users can apply this exit type by selecting "Candle Trail" via strategy Settings/Inputs/STRATEGY.
Opposing Candle Colour Close
The opposing candle colour close exit type is defined as an exit condition that closes any long positions when a new red candle forms and closes any short positions when a new green candle forms.
Users can apply this exit type by selecting "Opposing Candle" via strategy Settings/Inputs/STRATEGY.
█ CORE FILTERS
Minimum Risk Range Filter
The minimum risk range filter is defined as an entry filter that invalidates trade signals with a risk range below a user-defined threshold.
The default minimum risk range is set to 4 points/pips.
Users can adjust the minimum risk range via strategy Settings/Inputs/RISK RANGE FILTER.
It is recommended that users set the minimum risk range at least 1–2 points/pips above the selected symbol’s spread to invalidate trades that would be completely impractical under realistic trading conditions.
Time Zone
The time zone is defined using either an IANA region identifier (e.g. Europe/London, America/New_York) or a fixed UTC/GMT offset (e.g. UTC+1, GMT-05:30). Fixed offsets do not account for daylight saving time.
The default time zone is set to Europe/London.
Users can change the time zone via strategy Settings/Inputs/TIME ZONE.
For further information on time zone configuration, please refer to:
data.iana.org
en.wikipedia.org
Session Filter
The session filter is defined as an entry filter that invalidates trade signals that fall outside a user-defined intraday trading session, with session start and end times bound to the strategy time zone.
TradingView candle timestamps represent the candle open time, not the candle close time. As a result, session boundaries are evaluated based on when a candle opens, even though entries and exits are processed at candle close.
To avoid trades being entered or held beyond the intended session end, users should configure the session end time at least one full timeframe period earlier than the desired practical session close. For example, on a 5-minute chart with a desired session end at 22:00, the session should typically be configured to end at 21:55. This ensures that no new trades are taken at the final session close and that any session-dependent exit logic is applied before the session ends in practice.
When using custom or non-standard timeframes where the desired session end does not align cleanly with candle boundaries, it is recommended that users set the session end two full timeframe periods earlier than the desired session end. This provides an additional safety buffer, ensuring the strategy avoids taking trades near the session boundary.
By default, the session filter is set to false and the default session is set to "2300-2155".
Users can apply the session filter and adjust session boundaries via strategy Settings/Inputs/SESSION FILTER.
Close At End of Session Filter
The close at end of session filter is defined as an exit filter that closes all open positions when the active trading session ends, provided that the session filter is appropriately configured and applied.
When enabled, the strategy monitors the session filter state and detects the transition from an active session to an inactive session. All open trades are closed on the first candle that falls outside the defined session window. This ensures that no positions are carried beyond the user-defined trading session.
The close at end of session filter operates independently of entry conditions and other exit types. When enabled, it will force the closure of all open positions at session end regardless of the selected exit configuration.
Enabling the close at end of session filter can result in variable reward-to-risk outcomes. Because positions are forcibly closed at session end regardless of stop loss or target placement, exits may occur at prices that differ from those implied by the fixed reward-to-risk configuration. This behaviour is intentional and reflects a design trade-off between enforcing strict session boundaries and allowing trades to reach their predefined directional objectives, regardless of how severely distorted the realised reward-to-risk outcomes could be in the event of price gaps.
By default, the close at end of session filter is set to false.
Users can apply the close at end of session filter via strategy Settings/Inputs/CLOSE AT END OF SESSION FILTER.
Users should also ensure that the session filter is applied and that session boundaries are configured appropriately with respect to candle timestamp behaviour, as described in the session filter section above.
Sample Period Filter
The sample period filter is defined as an entry filter that invalidates trade signals that fall outside a user-defined date-time range, with start and end date-times bound to the strategy time zone.
TradingView candle timestamps represent the candle open time, not the candle close time. As a result, sample period boundaries are evaluated based on when a candle opens, even though entries and exits are processed at candle close.
To avoid trades being entered beyond the intended sample period end, users should configure the sample period end date-time at least one full timeframe period earlier than the desired practical sample period end date-time. For example, on a 5-minute chart with a desired end date-time of 01/01/2026 22:00, the end date-time should typically be configured to 01/01/2026 21:55.
The default sample period start and end date-times are set to 01/01/1900 00:00 and 01/01/3000 00:00, respectively.
Users can adjust the sample period via strategy Settings/Inputs/SAMPLE PERIOD FILTER.
█ GENERIC FILTERS
Generic Filter Behaviour
Unless otherwise stated:
"None" inputs return true.
Filters return true only when their selected condition is satisfied.
Close Above-Equal/Below Filter
The close price above-equal/below filter is defined as an entry filter that evaluates the most recent candle close price relative to a given time-series value and invalidates trade signals that do not satisfy a user-defined directional condition.
"Above-Equal" returns true when the most recent candle close price is greater than or equal to any given time-series value.
"Below" returns true when the most recent candle close price is less than any given time-series value.
Minimum Percentage Change Positive-Flat/Negative Filter
The minimum percentage change filter is an entry filter that measures the relative change of a time-series value over a configurable historical window and applies a directional threshold condition, invalidating trade signals that do not meet the directional threshold criteria.
The filter compares the current value to its value n bars ago and computes the percentage difference. A signal returns true only if this percentage change satisfies both:
The selected directional requirement.
The user-defined minimum percentage change magnitude.
"Positive-Flat" direction logic:
Accepts values that have increased or remained unchanged, provided the percentage change is greater than or equal to the minimum threshold.
"Negative" direction logic:
Accepts values that have decreased, provided the magnitude of the decrease meets or exceeds the minimum threshold.
When the minimum threshold is set to 0%, the filter behaves as a pure directional check:
"Positive-Flat" accepts ≥ 0% changes.
"Negative" accepts < 0% changes only.
Moving Average (MA) Double and Triple Trend Filters
MA double and triple trend filters are defined as entry filters that evaluate the relative positioning of two or more MA values and invalidate trade signals that do not satisfy a user-defined directional condition.
"Above-Equal" returns true when one MA is greater than or equal to another MA.
"Below" returns true when one MA is less than another MA.
Basic and Exclusive Rejection Filters
The basic rejection filter is defined as an entry filter that evaluates swing-based wick or body rejections of a given price level and invalidates trade signals that do not satisfy the rejection criteria.
For long trades, "Rejection" returns true when all three of the following conditions are met:
The previous candle open is above a given rejection price.
The trough price is less than or equal to a given rejection price.
The green candle that completes the swing closes above a given rejection price.
For short trades, "Rejection" returns true when all three of the following conditions are met:
The previous candle open is below a given rejection price.
The peak price is greater than or equal to a given rejection price.
The red candle that completes the swing closes below a given rejection price.
The exclusive rejection filter is defined as an entry filter that meets basic rejection filter criteria for only one user-defined price level from a set of given price levels. If the rejection criteria is met for more than one of the given price levels the filter will return false.
Basic and Multi-Part Trend Filters
Basic and multi-part trend filters are defined as entry filters that evaluate changes in time-series values from one period to the next and invalidate trade signals that do not satisfy a user-defined trend condition.
Basic trends operate independently of prior trend state, whereas multi-part trends are defined by the presence or absence of preceding trend sequences. The multi-part trend states are distinguished numerically and the conditions are bound to a user-defined trend count.
"Basic Uptrend" returns true when a time-series value is greater than the preceding value. For example, a basic volume uptrend filter returns true if the most recent candle's volume is greater than the preceding candle's volume.
"Basic Downtrend" returns true when a time-series value is less than the preceding value. For example, a basic volume downtrend filter returns true if the most recent candle's volume is less than the preceding candle's volume.
"Uptrend" returns true while a multi-part uptrend state is valid. The uptrend state begins when a new basic uptrend forms following a basic downtrend and remains valid until a new basic downtrend forms. The user-defined trend count will determine which multi-part trend condition is selected. For example, if the user-defined trend count is set to 3, then only 3-part uptrend conditions will return true.
"Downtrend" returns true while a multi-part downtrend state is valid. The downtrend state begins when a new basic downtrend forms following a basic uptrend and remains valid until a new basic uptrend forms. The user-defined trend count will determine which multi-part trend condition is selected. For example, if the user-defined trend count is set to 3, then only 3-part downtrend conditions will return true.
█ FEATURE SET H SPECIFIC FILTERS
All feature set specific indicators use the same calculations as the built-in TradingView indicators unless otherwise stated in the relevant filter sub-section. While users do not need to apply the indicators for the strategy to function, they can of course apply the relevant indicators as visual aids if they so desire.
For further information on how to apply built-in TradingView indicators, please refer to:
www.tradingview.com
Harmonic Pattern Filter
The harmonic patterns used in this script are the same as those included in my patterns library and harmonic patterns indicator. Link below for library and indicator, respectively:
The harmonic pattern filter is an entry filter that validates trade signals based on the presence of a user-selected harmonic pattern.
Separate filters are provided for long and short entries. Each filter evaluates only patterns that are directionally compatible with the corresponding core entry condition.
The default mode for the long and short harmonic pattern filters is set to "None".
Users can apply the harmonic pattern filters via strategy Settings/Inputs/HARMONIC PATTERN FILTERS.
Hilbert Transform (HT) Filters
As there is no built-in indicator for the HT value used in this script, users can build their own HT indicator in Pine Script by copying the following code and pasting it into a new indicator:
//@version=6
indicator("Hilbert Transform", overlay = false)
import TradingView/ta/12 as ta
ht = ta.ht(close)
plot(ht)
For further information on how to build Pine Script indicators, please refer to:
www.tradingview.com
www.tradingview.com
The HT above-equal/below zero filter is defined as an entry filter that evaluates the HT value relative to the zero line and invalidates trade signals that do not satisfy a user-defined directional condition.
The default mode for the HT above-equal/below zero filter is set to "None".
The HT minimum percent change positive-flat/negative filter (see generic filters section above) defaults are as follows:
Mode is set to "None".
Minimum percent change is set to 0.
Lookback is set to 3.
The HT trend filter (see generic filters section above) defaults are as follows:
Mode is set to "None".
Trend count is set to 3.
Users can apply the HT filters and adjust filter parameters via strategy Settings/Inputs/HILBERT TRANSFORM (HT) FILTERS.
Hull Moving Average (HMA) Filters
Users can define up to three independent HMA series. The defaults are as follows:
HMA 1: source = close, length = 50.
HMA 2: source = close, length = 100.
HMA 3: source = close, length = 200.
Users can adjust the HMA inputs via strategy Settings/Inputs/HULL MOVING AVERAGE (HMA).
Users can apply up to three independent close above-equal/below filters (see generic filters section above), one for each user-defined HMA. The default mode for all three HMA close above-equal/below filters is set to "None".
Users can apply up to three independent HMA double trend filters (see generic filters section above), one filter for each of the three possible configurations. The defaults are as follows:
HMA 1 above-equal/below HMA 2 is set to "None".
HMA 2 above-equal/below HMA 3 is set to "None".
HMA 1 above-equal/below HMA 3 is set to "None".
The HMA rejection filter is defined as an exclusive rejection filter (see generic filters section above) that will only return true if the user-defined HMA is rejected exclusive of the other two HMAs.
The default mode for the HMA rejection filter is set to "None".
Users can apply the HMA filters and adjust filter parameters via strategy Settings/Inputs/HMA FILTERS.
█ ALERTS
Users can set alerts for any given strategy configuration via the alerts dialogue box.
Users must first ensure that the correct condition (the strategy title) is selected from the first drop-down list in the alert dialogue box's condition field.
Default alert messages have been configured for both entries and exits so that users can more effectively distinguish between long and short entries and exits while using long-short configurations.
To get alerts for both entries and exits the user should change the value in the condition field's second drop-down list from "Order fills only and alert() function calls" to "Order fills only". When using "Order fills only" with long-short configurations, it is recommended that users define their alert via the alert name field and use only the default {{strategy.order.alert_message}} call in the alert message field.
Alert conditions generated by "Order fills only" are evaluated after entry conditions have been satisfied and operational constraints (risk, position size and margin requirements) have been applied. As such, trade signals that would result in position sizes exceeding the simulated account's margin constraints will not generate alerts.
To get alerts for entries only the user should change the value in the condition field's second drop-down list from "Order fills only and alert() function calls" to "alert() function calls only".
The default alert messages generated by "Order fills only" are as follows:
"long entry".
"long exit".
"short entry".
"short exit".
The default alert messages generated by "alert() function calls only" are as follows:
"long entry".
"short entry".
Alert conditions generated by "alert() function calls only" are operational-constraint-agnostic and will generate alerts whenever entry conditions are satisfied, regardless of the simulated account's margin constraints.
For further information on setting and managing alerts, please refer to:
www.tradingview.com
www.tradingview.com
www.tradingview.com
█ LIMITATIONS AND CONSIDERATIONS
Backtesting
Backtest results should always be interpreted cautiously. Strategy performance can vary significantly across time periods and sample sets. While strong historical performance does not guarantee future results, poor historical performance reliably indicates a weak strategy when sample sizes are statistically meaningful.
Statistical Significance and Path-Dependent Outcomes (Overfitting)
In statistical practice, sample sizes of 100 observations are sometimes cited as a rough lower bound for certain forms of basic significance testing. In the context of trading strategy evaluation, such sample sizes are rarely sufficient to produce results that are meaningfully reliable or replicable. Based on practical experience, sample sizes closer to 1,000 observations or more are generally required before performance characteristics begin to stabilise. As a general rule, larger sample sizes increase the reliability and replicability of observed results.
Path dependence refers to situations in which outcomes are determined not only by initial conditions, but by the specific and unique sequence of price movements over a given time period.
Even with large sample sizes, favourable net profit outcomes should be interpreted with caution when they are primarily driven by either variable reward-to-risk configurations or fixed reward-to-risk configurations that employ unrealistically high reward multiples. In both cases, performance is often strongly influenced by path-dependent effects, making such outcomes less reliable and less replicable.
Fixed reward-to-risk configurations are generally less susceptible to path dependence when the reward multiple is kept within reasonable bounds. However, empirical studies and practitioner research suggest that reward multiples above approximately 3:1 increasingly exhibit the same path-dependent characteristics observed in variable reward-to-risk strategies.
Bar Magnifier
Due to the limitations of OHLC data, intra-bar price movement cannot be precisely determined.
When both stop loss and target levels are reached within the same candle, assumptions are made by the strategy tester.
Pine Script's bar magnifier partially mitigates this limitation by evaluating lower-timeframe data. However, this feature is available only to TradingView Premium users and remains inherently limited.
For further information on the bar magnifier functionality, please refer to:
www.tradingview.com
www.tradingview.com
TradingView Premium users can enable bar magnifier via strategy Settings/Properties/FILL ORDERS.
Processing Orders at Candle Close
Backtests cannot accurately account for slippage between signal generation and trade execution.
A practical mitigation is to use fixed-distance stop losses and targets rather than absolute price levels, a feature supported by many brokers and APIs.
Empirical Probabilities
Empirical probabilities are derived directly from observed outcomes rather than from theoretical models or assumed distributions. In the context of trading, they are calculated by measuring the relative frequency of events (such as wins and losses) across a large sample of historical trades.
Unlike conditional or model-based probabilities, empirical probabilities make no assumptions. Their validity relies primarily on sample size and the consistency of the rules used to generate observations, making them particularly relevant for trading systems evaluated under the law of large numbers.
Empirical probabilities are most useful for comparative analysis, such as assessing how different configurations, filters or exit mechanisms alter the statistical behaviour of a strategy under identical conditions. They are not intended to represent true predictive probabilities or to imply stable future performance.
To study empirical probabilities for comparative purposes, it is recommended that users set commission and both long and short margin values to 0% in order to maximise sample size. However, users should not interpret any resulting profits as realistic. Setting commission and margin (in particular) to 0% produces highly distorted outcomes that are not representative of realistic live trading conditions.
█ DISCLAIMER
This Pine Script strategy is provided for educational purposes only and does not constitute financial advice in any form.
Pine Script®策略
Ethical Fairness Trend-FVG Liquidity Strategy 🔹 Core Design Philosophy
• Trend First: Trades are aligned with higher-timeframe directional bias using EMA structure (EMA55 / EMA100 / EMA200).
• Ethical Execution: Signals are confirmed on candle close to reduce repainting and emotional over-trading.
• Fair Market Interaction: Focuses on price acceptance, liquidity behavior, and value re-engagement rather than chasing breakouts.

🔹 Entry Logic Overview
A trade is triggered only when trend, trigger, and filter layers agree:
1. Trend Filter
• Bullish: EMA55 > EMA100 > EMA200
• Bearish: EMA55 < EMA100 < EMA200
2. Primary Triggers (DTFX + EMA55)
• DTFX momentum trigger (ATR-normalized EMA differential)
• EMA55 pullback (touch & reclaim)
• EMA55 directional crossover (trend continuation)
3. Contextual Triggers (Optional)
• Fair Value Gap (FVG) mitigation with:
• Volume easing
• MA35 proximity (value re-entry)
• Liquidity sweep & reclaim (stop-run behavior)
4. Oscillator Filter
• RSI or StochRSI used as a permission filter, not a signal generator
• Helps avoid entries during weak or exhausted momentum

🔹 Risk Management
• ATR-based protective stop
• Configurable Risk-Reward take-profit
• Supertrend reversal exit
• No pyramiding, no martingale, no curve-fitting

🔹 Visual Components
• EMA structure & EMA55 trend conversion alert line
• MA35 support / resistance zones
• FVG zones with mitigation state
• Liquidity sweep markers
• Optional oscillator sub-pane
• Ethical reminder label on chart
Pine Script®策略
ATR Reversal Master TXF Futures | Auto Long & Short with ProfesProduct Features: Taiwan Futures (TX)
Fully automated ATR-based reversal trading (long & short entries/exits)
Professional Chinese panel showing trend, position, condition price, distance, ATR, and win rate
Long/short arrow signals with adjustable vertical offset
Configurable ATR period and multiplier; strategy core logic is locked for safety
Single-direction condition price tracking for secure reversals
Ideal For:
Traders who want to use ATR for reversal strategies
Users who need real-time Chinese panel monitoring of market dynamics
功能特色:台指期 完全自動化反手交易(多空自動進出) 中文專業面板,顯示趨勢、持倉、條件價、距離、ATR、勝率 多空箭頭提示
建議:6分平均K
Pine Script®策略
Supertrend Elite Trend System🏆 SUPERTREND ELITE TREND SYSTEM (SETS)
A sophisticated multi-indicator voting system designed for crypto trending markets, combining 10 powerful technical indicators with weighted scoring and trend confirmation.
📊 BACKTESTED PERFORMANCE (2018-2026):
- Total Return: +2,170%
- Win Rate: 30.23%
- Profit Factor: 2.4
- Max Drawdown: 41.72%
- Total Trades: 43
🎯 HOW IT WORKS:
The system uses 10 carefully selected indicators that "vote" on market direction:
1. Supertrend - Trend following baseline
2. ALMA - Smooth trend detection (Weight: 2)
3. CTI - Correlation Trend Indicator
4. STC - Sebastine Trend Catcher (Weight: 2)
5. GUNXO - Dual EMA trend sniper
6. DEMA DMI - Combined momentum & trend (Weight: 2)
7. MM - Market momentum indicator
8. DMI Loop - Directional movement analysis
9. Trend Oscillator - Fast/slow EMA divergence
10. Stochastic - Overbought/oversold conditions
Each indicator votes BULL (+1 or +2) or BEAR (-1 or -2), creating a weighted score out of 13 possible points.
🔥 SIGNAL GENERATION:
- STRONG BULL: Score difference > +4 (sustained 2 bars)
- WEAK BULL: Score difference > +1 (sustained 2 bars)
- WEAK BEAR: Score difference < -1 (sustained 2 bars)
- STRONG BEAR: Score difference < -4 (sustained 2 bars)
The 2-bar confirmation requirement filters out false signals and reduces whipsaws.
💎 BEST FOR:
- Crypto markets (BTC, ETH, major altcoins)
- 4H to Daily timeframes
- Trending markets (bull or bear)
- Long-term position holders
⚠️ NOT RECOMMENDED FOR:
- Ranging/sideways markets
- Scalping or day trading
- Low-volume altcoins
- High-frequency trading
📈 VISUAL FEATURES:
- Color-coded trend line below price (Green = Bull, Red = Bear)
- Real-time score dashboard showing bull/bear votes
- Clear action signals (BUY/HOLD, CAUTION, REDUCE, SELL/EXIT)
- Built-in alerts for trend changes
💡 STRATEGY:
The system is designed for "buy and hold during uptrends" approach. Enter on STRONG BULL or WEAK BULL signals, exit on WEAK BEAR or STRONG BEAR signals. Works best when combined with proper risk management and position sizing.
📱 ALERTS AVAILABLE:
- Strong Buy Signal
- Strong Sell Signal
- Trend Weakening Warning
- Bearish Turn Warning
Created and backtested by advanced algorithmic trading research. Not financial advice - always do your own research and never risk more than you can afford to lose.
Pine Script®策略
Swing Strategy Feature Set F [theEccentricTrader]█ OVERVIEW
This swing strategy is part of a broader research and exploration framework designed to encourage users to experiment with a variety of technical concepts and evaluate the comparative effectiveness of different strategy configurations. For example, users can first configure a core strategy as a benchmark, then iteratively test a range of feature configurations as additional entry conditions and compare their performance against one another and against the core strategy.
Feature Set F includes concepts beginning with the letter "F" and forms part of a larger swing strategy suite that covers a wide range of technical concepts. The objective of the suite is not curve-fitting, but rather structured experimentation, exploration and statistical validation (or invalidation) of technical concepts.
Concepts exclusive to the feature set are as follows:
Fibonacci Ratios
Fisher Transform
Inverse Fisher Transform
█ OPERATIONAL
Initial Capital
The initial capital is defined as a monetary value denominated in a given base currency.
The default initial capital is set to 100,000.
The default base currency is set to the selected symbol's default base currency.
Users can adjust the initial capital and select an alternative base currency via strategy Settings/Properties.
Risk as Percentage of Equity
The equity is defined as the sum of initial capital, net profit and open profit.
The risk is defined as a percentage of equity per-trade. As a result, net profit outcomes are subject to compounding effects over time.
The default risk is set to 1% of equity.
Users can adjust the strategy's per-trade risk via strategy Settings/Inputs/STRATEGY.
For further information on how the risk is applied in practice, refer to the position sizing section below.
Unit of Value
The unit of value is defined as a decimal precision factor that converts user-defined point or pip distances into actual price units used by the selected symbol.
Different symbols express price movement using different conventions. For example, some symbols are quoted directly in whole price points, while others use pips or fractional point increments. The unit of value provides a normalisation layer that allows all distance-based logic in the strategy to operate consistently across symbols.
Examples:
A unit of value of 1 corresponds to a price increment of 1.0.
A unit of value of 10 corresponds to a price increment of 0.1.
A unit of value of 100 corresponds to a price increment of 0.01.
A unit of value of 1000 corresponds to a price increment of 0.001.
A unit of value of 10000 corresponds to a price increment of 0.0001.
Users should consult their broker’s published symbol specifications to confirm how price movement is defined for the symbols they intend to backtest. Incorrect configuration of the unit of value may result in misaligned stop distances, targets and/or risk calculations.
The default unit of value is set to 1.
Users can adjust the unit of value via strategy Settings/Inputs/STRATEGY.
Stop Buffer
The stop buffer is defined as the number of points or pips beyond a stop loss level required for the level to be considered clearly breached.
The default stop buffer is set to 0 points/pips.
Users can adjust the stop buffer via strategy Settings/Inputs/STRATEGY.
Risk Range
The risk range is defined as the difference between the entry price and the stop loss price (inclusive of the stop buffer) for any given trade.
Position Sizing
Position sizing determines the quantity of contracts, shares or units opened for each trade based on the user-defined risk and the selected symbol’s pricing structure.
"syminfo.pointvalue" is a built-in Pine Script variable that defines the number of underlying units contained within a single contract for any given symbol, and is critical for accurate position size calculations.
The position size is calculated as follows:
The risk range is multiplied by the syminfo.pointvalue to convert the price movement into its monetary equivalent.
The user-defined risk amount (expressed as a percentage of equity) is divided by this monetary risk per unit to determine the position size.
This ensures that each trade risks a consistent proportion of account equity regardless of point or pip based quoting conventions, symbol price scale or contract specifications.
While the strategy targets a fixed percentage of equity risk per-trade, the exact risk applied cannot always be matched precisely due to symbol-specific constraints such as contract sizing and margin requirements. In these cases, the strategy opens the largest permissible position that does not violate operational constraints, resulting in a realised risk that is as close as possible to the user-defined risk without exceeding it.
For further information on the syminfo.pointvalue variable, please refer to:
www.tradingview.com
Margin
The margin is defined as the minimum percentage of a position’s notional value that must be covered by the strategy’s available equity in order for TradingView's strategy tester to simulate opening and maintaining that position. For example, a margin setting of 25% means the simulated account must hold equity equal to at least 25% of the position’s notional value in order to enter or maintain that trade, the remaining 75% is considered provided by the simulated broker.
A lower margin percentage allows the account to open larger positions relative to its equity, because the required equity portion is smaller. Conversely, a higher margin percentage demands more of the account's equity be committed to any given position.
When the account’s equity falls below the required margin, the strategy tester emulates a margin call event, in which the broker emulator forcibly closes or reduces positions so that remaining positions no longer exceed available equity relative to the margin requirement. This behaviour is documented as part of TradingView’s margin/leverage feature for strategies.
Margin settings in a strategy are used solely for simulation purposes and do not automatically match any broker’s real-world margin requirements (which can vary by broker, asset class and symbol). Users should consult their broker’s published specifications for further details.
The default margin is set to 25% for both long and short positions.
Users can adjust the margin for long and short positions independently via strategy Settings/Properties/MARGIN.
For further information on the strategy tester's margin functionality, please refer to:
www.tradingview.com
www.tradingview.com
Pyramiding
The pyramiding count is defined as the maximum number of open positions permitted at any one time. TradingView's strategy tester does not facilitate hedging, as such, long entries will close any open short positions and short entries will close any open long positions.
The default pyramiding count is set to 100.
Users can adjust the pyramiding count via strategy Settings/Properties.
For further information on TradingView's strategy tester and broker emulator, please refer to:
www.tradingview.com
Spread
The spread is defined as the difference between a given symbol's bid (buy) price and ask (sell) price.
Typical spreads vary by broker and symbol. Some brokers offer fixed spreads on certain symbols, while others offer variable spreads that fluctuate with market conditions. Users should consult their broker's published specifications for further details.
Commission
The commission is defined as a transaction cost applied by a broker and may be expressed as a percentage of position size, a per-contract fee or a fixed fee per-transaction.
Commission structures vary by broker and symbol. Some brokers charge no explicit commission and instead generate revenue through the spread or other indirect sources, while others will typically apply one of the three aforementioned commission types, depending on the product offered. Users should consult their broker's published specifications for further details.
The default commission is set to 0.005% of position size.
Users can select and adjust the commission type via strategy Settings/Properties/COST SIMULATION.
█ CORE STRATEGY
Green and Red Candles
A green candle is defined as a candle that closes at or above its open price and a red candle is defined as a candle that closes below its open price.
Swing Highs and Swing Lows
A swing high is defined as a green candle, or a series of consecutive green candles, followed by a single red candle that completes the swing and forms the peak.
A swing low is defined as a red candle, or a series of consecutive red candles, followed by a single green candle that completes the swing and forms the trough.
Peak and Trough Prices
The peak price of a complete swing high is either the high of the red candle that completes the swing high or the high of the preceding green candle, depending on which is higher.
The trough price of a complete swing low is either the low of the green candle that completes the swing low or the low of the preceding red candle, depending on which is lower.
Fixed Reward-to-Risk
Fixed reward-to-risk is defined as a user-defined reward multiple for a given unit of risk.
Variable Reward-to-Risk
Variable reward-to-risk is defined as a path-dependent reward multiple for a given unit of risk.
Swing High Swing Low (SHSL) Strategy
The SHSL strategy uses swing lows for core long entry conditions and swing highs for core short entry conditions. The strategy is designed for standard OHLC candlestick charts only and will not behave as intended on other chart types.
All entries are processed at candle close and use the candle close price for the entry price.
Long stop losses are anchored to the most recent trough and short stop losses are anchored to the most recent peak.
Users can choose between long-only and short-only configurations, or alternatively simulate trades in both directions (long-short). However, when the "Both" option is selected, long entries will close any open short positions and short entries will close any open long positions (as mentioned in the pyramiding sub-section above). This can and will result in variable reward-to-risk outcomes.
The default direction is set to "Long" for a long-only configuration.
The default exit type is set to "Target" for a fixed reward-to-risk configuration.
Long targets are determined by adding a user-defined multiple of the risk range to the entry price and short targets are determined by subtracting a user-defined multiple of the risk range from the entry price.
Even when using a fixed reward-to-risk configuration, realised reward-to-risk outcomes may vary due to market gaps, particularly when positions are held across session boundaries or market closures. Gaps can cause stop losses or exits to be executed at prices materially different from those implied by the strategy’s static distance calculations. Users who wish to minimise gap-related variability may consider applying the close at end of session filter (see core filters section below), accepting that this introduces its own form of reward-to-risk variability.
The default reward-to-risk is set to 1.
Users can adjust strategy parameters via strategy Settings/Inputs/STRATEGY. Selecting a non-target exit type removes profit targets and renders the reward-to-risk input inactive.
Trailing Stop Loss
A trailing stop loss is defined as an exit type that dynamically moves a stop loss level in a favourable direction when a predefined condition is met. For example, a predefined point move or the formation of a higher trough or lower peak.
Risk Range Trailing Stop Loss
The risk range trailing stop loss is defined as a trailing stop mechanism that activates once price has moved favourably by one full risk range. Upon activation, the stop loss is moved to breakeven and subsequently trails favourable price movement by the risk range into profit.
Users can apply this exit type by selecting "Trail" via strategy Settings/Inputs/STRATEGY.
Trend Trailing Stop Loss
The trend trailing stop loss is defined as a trailing stop mechanism that dynamically moves a stop loss level to newly formed higher troughs (for longs) or lower peaks (for shorts).
Users can apply this exit type by selecting "Trend Trail" via strategy Settings/Inputs/STRATEGY.
Candle Trailing Stop Loss
The candle trailing stop loss is defined as a trailing stop mechanism that dynamically moves a stop loss level to newly formed higher candle lows (for longs) or lower candle highs (for shorts).
Users can apply this exit type by selecting "Candle Trail" via strategy Settings/Inputs/STRATEGY.
Opposing Candle Colour Close
The opposing candle colour close exit type is defined as an exit condition that closes any long positions when a new red candle forms and closes any short positions when a new green candle forms.
Users can apply this exit type by selecting "Opposing Candle" via strategy Settings/Inputs/STRATEGY.
█ CORE FILTERS
Minimum Risk Range Filter
The minimum risk range filter is defined as an entry filter that invalidates trade signals with a risk range below a user-defined threshold.
The default minimum risk range is set to 4 points/pips.
Users can adjust the minimum risk range via strategy Settings/Inputs/RISK RANGE FILTER.
It is recommended that users set the minimum risk range at least 1–2 points/pips above the selected symbol’s spread to invalidate trades that would be completely impractical under realistic trading conditions.
Time Zone
The time zone is defined using either an IANA region identifier (e.g. Europe/London, America/New_York) or a fixed UTC/GMT offset (e.g. UTC+1, GMT-05:30). Fixed offsets do not account for daylight saving time.
The default time zone is set to Europe/London.
Users can change the time zone via strategy Settings/Inputs/TIME ZONE.
For further information on time zone configuration, please refer to:
data.iana.org
en.wikipedia.org
Session Filter
The session filter is defined as an entry filter that invalidates trade signals that fall outside a user-defined intraday trading session, with session start and end times bound to the strategy time zone.
TradingView candle timestamps represent the candle open time, not the candle close time. As a result, session boundaries are evaluated based on when a candle opens, even though entries and exits are processed at candle close.
To avoid trades being entered or held beyond the intended session end, users should configure the session end time at least one full timeframe period earlier than the desired practical session close. For example, on a 5-minute chart with a desired session end at 22:00, the session should typically be configured to end at 21:55. This ensures that no new trades are taken at the final session close and that any session-dependent exit logic is applied before the session ends in practice.
When using custom or non-standard timeframes where the desired session end does not align cleanly with candle boundaries, it is recommended that users set the session end two full timeframe periods earlier than the desired session end. This provides an additional safety buffer, ensuring the strategy avoids taking trades near the session boundary.
By default, the session filter is set to false and the default session is set to "2300-2155".
Users can apply the session filter and adjust session boundaries via strategy Settings/Inputs/SESSION FILTER.
Close At End of Session Filter
The close at end of session filter is defined as an exit filter that closes all open positions when the active trading session ends, provided that the session filter is appropriately configured and applied.
When enabled, the strategy monitors the session filter state and detects the transition from an active session to an inactive session. All open trades are closed on the first candle that falls outside the defined session window. This ensures that no positions are carried beyond the user-defined trading session.
The close at end of session filter operates independently of entry conditions and other exit types. When enabled, it will force the closure of all open positions at session end regardless of the selected exit configuration.
Enabling the close at end of session filter can result in variable reward-to-risk outcomes. Because positions are forcibly closed at session end regardless of stop loss or target placement, exits may occur at prices that differ from those implied by the fixed reward-to-risk configuration. This behaviour is intentional and reflects a design trade-off between enforcing strict session boundaries and allowing trades to reach their predefined directional objectives, regardless of how severely distorted the realised reward-to-risk outcomes could be in the event of price gaps.
By default, the close at end of session filter is set to false.
Users can apply the close at end of session filter via strategy Settings/Inputs/CLOSE AT END OF SESSION FILTER.
Users should also ensure that the session filter is applied and that session boundaries are configured appropriately with respect to candle timestamp behaviour, as described in the session filter section above.
Sample Period Filter
The sample period filter is defined as an entry filter that invalidates trade signals that fall outside a user-defined date-time range, with start and end date-times bound to the strategy time zone.
TradingView candle timestamps represent the candle open time, not the candle close time. As a result, sample period boundaries are evaluated based on when a candle opens, even though entries and exits are processed at candle close.
To avoid trades being entered beyond the intended sample period end, users should configure the sample period end date-time at least one full timeframe period earlier than the desired practical sample period end date-time. For example, on a 5-minute chart with a desired end date-time of 01/01/2026 22:00, the end date-time should typically be configured to 01/01/2026 21:55.
The default sample period start and end date-times are set to 01/01/1900 00:00 and 01/01/3000 00:00, respectively.
Users can adjust the sample period via strategy Settings/Inputs/SAMPLE PERIOD FILTER.
█ GENERIC FILTERS
Generic Filter Behaviour
Unless otherwise stated:
"None" inputs return true.
Filters return true only when their selected condition is satisfied.
Minimum and Maximum Boundary Filters
Minimum and maximum boundary filters are defined as entry filters used to constrain time-series values to predefined minimum and/or maximum thresholds, invalidating trade signals that do not satisfy a user-defined threshold criteria. The filters consist of two independent threshold components, minimum (above-equal) and maximum (below-equal), which may be applied individually or together.
When both components are applied simultaneously the filters act as a value range constraint, invalidating trade signals that fall outside of the specified bounds.
"Above-Equal" returns true when the evaluated value is greater than or equal to the user-defined minimum boundary.
"Below-Equal" returns true when the evaluated value is less than or equal to the user-defined maximum boundary.
Minimum Percentage Change Positive-Flat/Negative Filter
The minimum percentage change filter is an entry filter that measures the relative change of a time-series value over a configurable historical window and applies a directional threshold condition, invalidating trade signals that do not meet the directional threshold criteria.
The filter compares the current value to its value n bars ago and computes the percentage difference. A signal returns true only if this percentage change satisfies both:
The selected directional requirement.
The user-defined minimum percentage change magnitude.
"Positive-Flat" direction logic:
Accepts values that have increased or remained unchanged, provided the percentage change is greater than or equal to the minimum threshold.
"Negative" direction logic:
Accepts values that have decreased, provided the magnitude of the decrease meets or exceeds the minimum threshold.
When the minimum threshold is set to 0%, the filter behaves as a pure directional check:
"Positive-Flat" accepts ≥ 0% changes.
"Negative" accepts < 0% changes only.
Basic and Exclusive Rejection Filters
The basic rejection filter is defined as an entry filter that evaluates swing-based wick or body rejections of a given price level and invalidates trade signals that do not satisfy the rejection criteria.
For long trades, "Rejection" returns true when all three of the following conditions are met:
The previous candle open is above a given rejection price.
The trough price is less than or equal to a given rejection price.
The green candle that completes the swing closes above a given rejection price.
For short trades, "Rejection" returns true when all three of the following conditions are met:
The previous candle open is below a given rejection price.
The peak price is greater than or equal to a given rejection price.
The red candle that completes the swing closes below a given rejection price.
The exclusive rejection filter is defined as an entry filter that meets basic rejection filter criteria for only one user-defined price level from a set of given price levels. If the rejection criteria is met for more than one of the given price levels the filter will return false.
Basic and Multi-Part Trend Filters
Basic and multi-part trend filters are defined as entry filters that evaluate changes in time-series values from one period to the next and invalidate trade signals that do not satisfy a user-defined trend condition.
Basic trends operate independently of prior trend state, whereas multi-part trends are defined by the presence or absence of preceding trend sequences. The multi-part trend states are distinguished numerically and the conditions are bound to a user-defined trend count.
"Basic Uptrend" returns true when a time-series value is greater than the preceding value. For example, a basic volume uptrend filter returns true if the most recent candle's volume is greater than the preceding candle's volume.
"Basic Downtrend" returns true when a time-series value is less than the preceding value. For example, a basic volume downtrend filter returns true if the most recent candle's volume is less than the preceding candle's volume.
"Uptrend" returns true while a multi-part uptrend state is valid. The uptrend state begins when a new basic uptrend forms following a basic downtrend and remains valid until a new basic downtrend forms. The user-defined trend count will determine which multi-part trend condition is selected. For example, if the user-defined trend count is set to 3, then only 3-part uptrend conditions will return true.
"Downtrend" returns true while a multi-part downtrend state is valid. The downtrend state begins when a new basic downtrend forms following a basic uptrend and remains valid until a new basic uptrend forms. The user-defined trend count will determine which multi-part trend condition is selected. For example, if the user-defined trend count is set to 3, then only 3-part downtrend conditions will return true.
█ FEATURE SET F SPECIFIC FILTERS
All feature set specific indicators use the same calculations as the built-in TradingView indicators unless otherwise stated in the relevant filter sub-section. While users do not need to apply the indicators for the strategy to function, they can of course apply the relevant indicators as visual aids if they so desire.
For further information on how to apply built-in TradingView indicators, please refer to:
www.tradingview.com
Fibonacci Ratio (FR) Filters
The Fibonacci ratios used in this script are the same as those in my Fibonacci ratios indicator, link below:
The FR rejection filter is defined as an exclusive rejection filter (see generic filters section above) that will only return true if the user-defined FR value is rejected exclusive of the other FR values.
The default mode for the FR rejection filter is set to "None".
Fisher Transform (FT) Filters
The default FT length is set to 9.
Users can adjust the FT length via strategy Settings/Inputs/Fisher Transform (FT).
The FT above-equal/below zero filter is defined as an entry filter that evaluates the FT value relative to the zero line and invalidates trade signals that do not satisfy a user-defined directional condition.
The default mode for the FT above-equal/below zero filter is set to "None".
The FT trigger above-equal/below zero filter is defined as an entry filter that evaluates the FT trigger value relative to the zero line and invalidates trade signals that do not satisfy a user-defined directional condition.
The default mode for the FT trigger above-equal/below zero filter is set to "None".
The FT and FT trigger minimum percent change positive-flat/negative filter (see generic filters section above) defaults are as follows:
Mode is set to "None".
Minimum percent change is set to 0.
Lookback is set to 3.
The FT and FT trigger trend filter (see generic filters section above) defaults are as follows:
Mode is set to "None".
Trend count is set to 3.
Users can apply the FT filters and adjust filter parameters via strategy Settings/Inputs/FT FILTERS.
Inverse Fisher Transform (IFT) Filters
As there is no built-in indicator for the IFT values used in this script, users can build their own IFT indicator in Pine Script by copying the following code and pasting it into a new indicator:
//@version=6
indicator("Inverse Fisher Transform", shorttitle = "IFT", overlay = false)
import TradingView/ta/12 as ta
ft_length = input.int(defval = 9, title = 'FT Length', minval = 1, group = 'Inverse Fisher Transform (IFT)')
ft = ta.ft(hl2, ft_length)
ift = ta.ift(ft)
plot(ift)
For further information on how to build Pine Script indicators, please refer to:
www.tradingview.com
www.tradingview.com
The IFT minimum and maximum boundary filter (see generic filters section above) defaults are as follows:
Apply above-equal filter is set to false.
Above-equal threshold is set to -1.
Apply below-equal filter is set to false.
Below-equal threshold is set to 1.
The IFT minimum percent change positive-flat/negative filter (see generic filters section above) defaults are as follows:
Mode is set to "None".
Minimum percent change is set to 0.
Lookback is set to 3.
The IFT trend filter (see generic filters section above) defaults are as follows:
Mode is set to "None".
Trend count is set to 3.
Users can apply the IFT filters and adjust filter parameters via strategy Settings/Inputs/IFT FILTERS.
█ ALERTS
Users can set alerts for any given strategy configuration via the alerts dialogue box.
Users must first ensure that the correct condition (the strategy title) is selected from the first drop-down list in the alert dialogue box's condition field.
Default alert messages have been configured for both entries and exits so that users can more effectively distinguish between long and short entries and exits while using long-short configurations.
To get alerts for both entries and exits the user should change the value in the condition field's second drop-down list from "Order fills only and alert() function calls" to "Order fills only". When using "Order fills only" with long-short configurations, it is recommended that users define their alert via the alert name field and use only the default {{strategy.order.alert_message}} call in the alert message field.
Alert conditions generated by "Order fills only" are evaluated after entry conditions have been satisfied and operational constraints (risk, position size and margin requirements) have been applied. As such, trade signals that would result in position sizes exceeding the simulated account's margin constraints will not generate alerts.
To get alerts for entries only the user should change the value in the condition field's second drop-down list from "Order fills only and alert() function calls" to "alert() function calls only".
The default alert messages generated by "Order fills only" are as follows:
"long entry".
"long exit".
"short entry".
"short exit".
The default alert messages generated by "alert() function calls only" are as follows:
"long entry".
"short entry".
Alert conditions generated by "alert() function calls only" are operational-constraint-agnostic and will generate alerts whenever entry conditions are satisfied, regardless of the simulated account's margin constraints.
For further information on setting and managing alerts, please refer to:
www.tradingview.com
www.tradingview.com
www.tradingview.com
█ LIMITATIONS AND CONSIDERATIONS
Backtesting
Backtest results should always be interpreted cautiously. Strategy performance can vary significantly across time periods and sample sets. While strong historical performance does not guarantee future results, poor historical performance reliably indicates a weak strategy when sample sizes are statistically meaningful.
Statistical Significance and Path-Dependent Outcomes (Overfitting)
In statistical practice, sample sizes of 100 observations are sometimes cited as a rough lower bound for certain forms of basic significance testing. In the context of trading strategy evaluation, such sample sizes are rarely sufficient to produce results that are meaningfully reliable or replicable. Based on practical experience, sample sizes closer to 1,000 observations or more are generally required before performance characteristics begin to stabilise. As a general rule, larger sample sizes increase the reliability and replicability of observed results.
Path dependence refers to situations in which outcomes are determined not only by initial conditions, but by the specific and unique sequence of price movements over a given time period.
Even with large sample sizes, favourable net profit outcomes should be interpreted with caution when they are primarily driven by either variable reward-to-risk configurations or fixed reward-to-risk configurations that employ unrealistically high reward multiples. In both cases, performance is often strongly influenced by path-dependent effects, making such outcomes less reliable and less replicable.
Fixed reward-to-risk configurations are generally less susceptible to path dependence when the reward multiple is kept within reasonable bounds. However, empirical studies and practitioner research suggest that reward multiples above approximately 3:1 increasingly exhibit the same path-dependent characteristics observed in variable reward-to-risk strategies.
Bar Magnifier
Due to the limitations of OHLC data, intra-bar price movement cannot be precisely determined.
When both stop loss and target levels are reached within the same candle, assumptions are made by the strategy tester.
Pine Script's bar magnifier partially mitigates this limitation by evaluating lower-timeframe data. However, this feature is available only to TradingView Premium users and remains inherently limited.
For further information on the bar magnifier functionality, please refer to:
www.tradingview.com
www.tradingview.com
TradingView Premium users can enable bar magnifier via strategy Settings/Properties/FILL ORDERS.
Processing Orders at Candle Close
Backtests cannot accurately account for slippage between signal generation and trade execution.
A practical mitigation is to use fixed-distance stop losses and targets rather than absolute price levels, a feature supported by many brokers and APIs.
Empirical Probabilities
Empirical probabilities are derived directly from observed outcomes rather than from theoretical models or assumed distributions. In the context of trading, they are calculated by measuring the relative frequency of events (such as wins and losses) across a large sample of historical trades.
Unlike conditional or model-based probabilities, empirical probabilities make no assumptions. Their validity relies primarily on sample size and the consistency of the rules used to generate observations, making them particularly relevant for trading systems evaluated under the law of large numbers.
Empirical probabilities are most useful for comparative analysis, such as assessing how different configurations, filters or exit mechanisms alter the statistical behaviour of a strategy under identical conditions. They are not intended to represent true predictive probabilities or to imply stable future performance.
To study empirical probabilities for comparative purposes, it is recommended that users set commission and both long and short margin values to 0% in order to maximise sample size. However, users should not interpret any resulting profits as realistic. Setting commission and margin (in particular) to 0% produces highly distorted outcomes that are not representative of realistic live trading conditions.
█ DISCLAIMER
This Pine Script strategy is provided for educational purposes only and does not constitute financial advice in any form.
Pine Script®策略
green bull strategysuper trend strategy never be on the wrong side of a trade again,
Use 35 Length and 3.3 multiplier on 3m for best result MNQ
Pine Script®策略
Stocks buying StrategyThis Strategy works on 15 mins time frame and it trades when Bollinger band hits lower levels then trades and exits when hit high Bollinger band band. The entry is also based on further conditions to enhance winning rate with help of RSI, MACD, Stochastic and William levels.
Pine Script®策略
Nifty ORB - 1min timeframeOpening Range Break (ORB), 1m tf
Takes first 5 candles of the day, Calculates High & Low, Adds buffer (user input)
,Only buffer lines are plotted
Entry (IMPORTANT)
Running candle entry, Entry happens the moment price crosses buffer
No candle close waiting
SL & Management Logic (CLEAR SEQUENCE)
1️⃣ Initial SL
Long → SL = entry candle - last 3 candles
Short → SL = Opening range HIGH - last 3 candles
2️⃣ BE SL (X points move)
When price moves X points in favor
SL moves to Entry Price (BE)
3️⃣ 1R Partial Booking
1R = Entry − OR High/Low (NO BUFFER counted)
Book 50% quantity
If BE not already done → move SL to BE
4️⃣ Trailing SL (Remaining 50%)
After 1R only
SL trails 20 EMA
If price touches EMA → exit remaining
5️⃣ 2R Exit Priority
If 2R hits first
Exit remaining qty
Stop trailing
6️⃣ Failure Case
If price never moves X points
Initial SL will hit → full exit
Pine Script®策略
Swing Trade StrategySwing Trade Strategy
📊 Overview
Multi-indicator trend-following system for cryptocurrency swing trading. Combines 10 technical indicators with weighted voting to identify high-probability trend reversals.
🎯 Key Features
10 indicators with weighted consensus voting (max 13 points Bull/Bear)
Trend confirmation system reduces false signals
Visual signals: Green/red trend line, buy/sell arrows, position backgrounds
Real-time dashboard: Shows Bull/Bear scores and trend strength
Long-only positions with automatic exits during bear markets
📈 How It Works
Entry: When Bull score exceeds Bear score by +2 (WEAK BULL) or +5 (STRONG BULL), confirmed over 2 bars
Exit: When Bear score exceeds Bull score by -2, confirmed over 2 bars
Indicators: RMI, ALMA, CTI, EMA crossovers, DEMA DMI, Stochastic, Trend Oscillators, and more
📊 Performance Characteristics
Trades: 4-5 per year (swing trading approach)
Win Rate: 39% (fewer wins but larger gains)
Profit Factor: 2.4+ (winners are 2.4x larger than losers)
Max Drawdown: -42%
⚙️ Settings
Timeframe: Daily (1D) recommended
Position Size: 95% of equity
Commission: 0.1% per trade
Asset: Optimized for BTC/crypto
💡 Usage
Apply to BTC Daily chart
Green arrow = BUY, Red arrow = SELL
Monitor dashboard for trend strength
Hold positions until opposite signal
⚠️ Risk Warning
Max 42% drawdown - high risk tolerance required
Long-only strategy - no shorting
Optimized for crypto markets
Past performance ≠ future results
Version: 1.0 | Pine Script: v6 | Style: Trend Following
Pine Script®策略
Stocks Buying StrategyThis strategy works on RSI , Bollinger Band, MACD and Stochastic where user can set the desired levels and default is enter at lower BB Level and exit and high BB level
Pine Script®策略






















