Laguerre-Kalman Adaptive Filter | AlphaNattLaguerre-Kalman Adaptive Filter |AlphaNatt
A sophisticated trend-following indicator that combines Laguerre polynomial filtering with Kalman optimal estimation to create an ultra-smooth, low-lag trend line with exceptional noise reduction capabilities.
"The perfect trend line adapts to market conditions while filtering out noise - this indicator achieves both through advanced mathematical techniques rarely seen in retail trading."
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎯 KEY FEATURES
Dual-Filter Architecture: Combines two powerful filtering methods for superior performance
Adaptive Volatility Adjustment: Automatically adapts to market conditions
Minimal Lag: Laguerre polynomials provide faster response than traditional moving averages
Optimal Noise Reduction: Kalman filtering removes market noise while preserving trend
Clean Visual Design: Color-coded trend visualization (cyan/pink)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 THE MATHEMATICS
1. Laguerre Filter Component
The Laguerre filter uses a cascade of four all-pass filters with a single gamma parameter:
4th order IIR (Infinite Impulse Response) filter
Single parameter (gamma) controls all filter characteristics
Provides smoother output than EMA with similar lag
Based on Laguerre polynomials from quantum mechanics
2. Kalman Filter Component
Implements a simplified Kalman filter for optimal estimation:
Prediction-correction algorithm from aerospace engineering
Dynamically adjusts based on estimation error
Provides mathematically optimal estimate of true price trend
Reduces noise while maintaining responsiveness
3. Adaptive Mechanism
Monitors market volatility in real-time
Adjusts filter parameters based on current conditions
More responsive in trending markets
More stable in ranging markets
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ INDICATOR SETTINGS
Laguerre Gamma (0.1-0.99): Controls filter smoothness. Higher = smoother but more lag
Adaptive Period (5-100): Lookback for volatility calculation
Kalman Noise Reduction (0.1-2.0): Higher = more noise filtering
Trend Threshold (0.0001-0.01): Minimum change to register trend shift
Recommended Settings:
Scalping: Gamma: 0.6, Period: 10, Noise: 0.3
Day Trading: Gamma: 0.8, Period: 20, Noise: 0.5 (default)
Swing Trading: Gamma: 0.9, Period: 30, Noise: 0.8
Position Trading: Gamma: 0.95, Period: 50, Noise: 1.2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📈 TRADING SIGNALS
Primary Signals:
Cyan Line: Bullish trend - price above filter and filter ascending
Pink Line: Bearish trend - price below filter or filter descending
Color Change: Potential trend reversal point
Entry Strategies:
Trend Continuation: Enter on pullback to filter line in trending market
Trend Reversal: Enter on color change with volume confirmation
Breakout: Enter when price crosses filter with momentum
Exit Strategies:
Exit long when line turns from cyan to pink
Exit short when line turns from pink to cyan
Use filter as trailing stop in strong trends
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✨ ADVANTAGES OVER TRADITIONAL INDICATORS
Vs. Moving Averages:
Significantly less lag while maintaining smoothness
Adaptive to market conditions
Better noise filtering
Vs. Standard Filters:
Dual-filter approach provides optimal estimation
Mathematical foundation from signal processing
Self-adjusting parameters
Vs. Other Trend Indicators:
Cleaner signals with fewer whipsaws
Works across all timeframes
No repainting or lookahead bias
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎓 MATHEMATICAL BACKGROUND
The Laguerre filter was developed by John Ehlers, applying Laguerre polynomials (used in quantum mechanics) to financial markets. These polynomials provide an elegant solution to the lag-smoothness tradeoff that plagues traditional moving averages.
The Kalman filter, developed by Rudolf Kalman in 1960, is used in everything from GPS systems to spacecraft navigation. It provides the mathematically optimal estimate of a system's state given noisy measurements.
By combining these two approaches, this indicator achieves what neither can alone: a smooth, responsive trend line that adapts to market conditions while filtering out noise.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
💡 TIPS FOR BEST RESULTS
Confirm with Volume: Strong trends should have increasing volume
Multiple Timeframes: Use higher timeframe for trend, lower for entry
Combine with Momentum: RSI or MACD can confirm filter signals
Market Conditions: Adjust noise parameter based on market volatility
Backtesting: Always test settings on your specific instrument
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️ IMPORTANT NOTES
No indicator is perfect - always use proper risk management
Best suited for trending markets
May produce false signals in choppy/ranging conditions
Not financial advice - for educational purposes only
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🚀 CONCLUSION
The Laguerre-Kalman Adaptive Filter represents a significant advancement in technical analysis, bringing institutional-grade mathematical techniques to retail traders. Its unique combination of polynomial filtering and optimal estimation provides a clean, reliable trend-following tool that adapts to changing market conditions.
Whether you're scalping on the 1-minute chart or position trading on the daily, this indicator provides clear, actionable signals with minimal false positives.
"In the world of technical analysis, the edge comes from using better mathematics. This indicator delivers that edge."
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Developed by AlphaNatt | Professional Quantitative Trading Tools
Version: 1.0
Last Updated: 2025
Pine Script: v6
License: Open Source
Not financial advice. Always DYOR
Analisis Trend
AVWAP+RSI Confluence — 1R TesterRSI + 1R ATR - Monthly P\&L (v4)
WHAT THIS STRATEGY DOES (OVERVIEW)
* Pine strategy (v4) that combines a simple momentum trigger with a symmetric 1R ATR risk model and an on-chart Monthly/Yearly P\&L table.
* Momentum filter: trades only when RSI crosses its own SMA in the direction of the trend (price vs Trend EMA).
* Risk engine: exits use fixed 1R ATR brackets captured at entry (no drifting targets/stops).
* Accounting: the table aggregates percentage returns by month and year using strategy equity.
ENTRY LOGIC (LONGS & OPTIONAL SHORTS)
Indicators used:
* RSI(rsiLen) and its SMA: SMA(RSI, rsiMaLen)
* Trend filter: EMA(emaTrendLen) on price
Longs:
1. RSI crosses above its RSI SMA
2. RSI > rsiBuyThr (filters weak momentum)
3. Close > EMA(emaTrendLen)
Shorts (optional via enableShort):
1. RSI crosses below its RSI SMA
2. RSI < rsiSellThr
3. Close < EMA(emaTrendLen)
EXIT LOGIC AND RISK MODEL (1R ATR)
* On entry, snapshot ATR(atrLen) into atrAtEntry and the average fill price into entryPx.
* Longs: stop = entryPx - ATR \* atrMult; target = entryPx + ATR \* atrMult
* Shorts: mirrored.
* Stops and targets are posted immediately and remain fixed for the life of the trade.
POSITION SIZING AND COSTS
* Default position size: 25% of equity per trade (adjustable in Properties/inputs).
* Commission percent and a small slippage are set in strategy() so backtests include friction by default.
MONTHLY / YEARLY P\&L TABLE (HOW IT WORKS)
* Uses strategy equity to compute bar returns: equity / equity\ - 1.
* Compounds bar returns into current month and current year; commits each finished period at month/year change (or last bar).
* Renders rows as years; columns Jan..Dec plus a Year total column.
* Cells colored by sign; precision and maximum rows are controlled by inputs.
* Values represent percentage returns, not currency P\&L.
VISUAL AIDS
* Two pivot trails (pivot high/low) are plotted for context only; they do not affect entries or exits.
CUSTOMIZATION TIPS
* Raise rsiBuyThr (long) or lower rsiSellThr (short) to filter weak momentum.
* Increase emaTrendLen to tighten trend alignment.
* Adjust atrLen and atrMult to fit your timeframe/instrument volatility.
* Leave enableShort = false if you prefer long-only behavior or shorting is constrained.
NON-REPAINTING AND BACKTEST NOTES
* Signals use bar-close crosses of built-in indicators (RSI, EMA, ATR); no future bars are referenced.
* calc\_on\_every\_tick = true for responsive visuals; Strategy Tester evaluates on bar close in history.
* Backtest stop/limit fills are simulated and may differ from live execution/liquidity.
DISCLAIMERS
* Educational use only. This is not financial advice. Markets involve risk. Past performance does not guarantee future results.
INPUTS (QUICK REFERENCE)
* rsiLen, rsiMaLen, rsiBuyThr, rsiSellThr
* emaTrendLen
* atrLen, atrMult, enableShort
* leftBars, rightBars, prec, showTable, maxYearsRows
SHORT TAGLINE
RSI momentum with 1R ATR brackets and a built-in Monthly/Yearly P\&L table.
TAGS
strategy, RSI, ATR, trend, risk-management, backtest, Pine-v4
Greer Gap# Greer Gap Indicator (No mitigation: i.e. removing false signals)
## Summary
The **Greer Gap Indicator** identifies **Fair Value Gaps (FVGs)** and introduces specialized **Greer Bull Gaps (Blue)** and **Greer Bear Gaps (Orange)** to highlight high-probability trading opportunities. Unlike traditional FVG indicators, it avoids hindsight bias by not removing historical gaps based on future price action, ensuring transparency in signal accuracy. Built upon LuxAlgo’s FVG logic, it adds unique filtering: only the first Greer Gap after an opposite gap is plotted if its level (min for Bull, max for Bear) is not higher/lower than the previous Greer Gap of the same type, while all valid gaps are recorded for comparison. Traders can use these gaps as support/resistance or entry signals, customizable via timeframe, look back, and display options.
## Description
This indicator detects and displays **Fair Value Gaps (FVGs)** on the chart, with a focus on specialized **Greer Gaps**:
- **Bullish Gaps (Green)**: Areas where the low of the current candle is above the high of a previous candle (look back period), indicating potential upward momentum.
- **Bearish Gaps (Red)**: Areas where the high of the current candle is below the low of a previous candle, indicating potential downward momentum.
- **Greer Bull Gaps (Blue)**: A bullish gap that is above the latest bearish gap's max. Only the first such gap after a bearish gap is plotted if it meets criteria (not higher than the previous Greer Bull Gap's min), but all valid ones are recorded for comparison.
- **Greer Bear Gaps (Orange)**: A bearish gap that is below the latest bullish gap's min. Only the first such gap after a bullish gap is plotted if it meets criteria (not lower than the previous Greer Bear Gap's max), but all valid ones are recorded.
## How It Works
The script uses a dynamic look back period to detect FVGs. It maintains a record of all detected gaps and applies additional logic for Greer Gaps:
- **Greer Bull Gaps**: Checks if the new bullish gap's min is above the latest bearish gap's max. Plots only if it's the first since the last bearish gap and its min is <= previous Greer Bull min (or first one).
- **Greer Bear Gaps**: Checks if the new bearish gap's max is below the latest bullish gap's min. Plots only if it's the first since the last bullish gap and its max is >= previous Greer Bear max (or first one).
- **Resets**: A new bearish gap resets the Greer Bull Gap flag, and a new bullish gap resets the Greer Bear Gap flag.
## How to Use
- **Timeframe**: Set a higher timeframe (e.g., 'D' for daily) to detect gaps from that timeframe on the current chart.
- **Look back Period**: Adjust to change gap detection sensitivity (default: 34). Use 2 if you want to compare to LuxAlgo
- **Extend**: Controls how far right the gap boxes extend.
- **Show Options**: Toggle visibility of all bullish/bearish gaps or Greer Gaps.
- **Colors**: Customize colors for each gap type.
- **Application**: Use Greer Gaps as potential support/resistance levels or entry signals, but combine with other analysis for confirmation.
## Originality and Credits
This script is inspired by and builds upon the **"Fair Value Gap "** indicator by LuxAlgo (available on TradingView: ()).
**Credits**: Thanks to LuxAlgo for the core FVG detection logic.
**Significant Changes**:
- Added **Greer Bull and Bear Gap** logic for filtered, directional gaps with reset mechanisms.
- Introduced recording of all valid Greer Gaps without plotting all, to compare levels without hindsight bias.
- **No mitigation/removal of gaps**: Unlike LuxAlgo's approach, which mitigates (removes or alters) gaps based on future price action (e.g., when filled), this can create a hindsight bias where incorrect signals disappear over time. If a signal is used for a trade and later removed due to new data, it doesn't reflect real-time performance accurately. The Greer Gap avoids this by using gap comparisons to validate signals without altering historical boxes, ensuring transparency in when signals were right or wrong.
SAPSAN TRADE: Retail Power Profile FIXSAPSAN TRADE: Retail Power Profile FIX
Visualize retail market pressure with precision using the SAPSAN TRADE: Retail Power Profile FIX indicator. This tool analyzes a selected time range and displays the distribution of bullish and bearish activity across price levels. Key features include:
Custom Time Range – Analyze any specific period by setting the start and end time.
Signed Volume Profile – Shows bullish (green) and bearish (red) volume across price levels.
POC (Point of Control) – Highlights the price level with the strongest retail activity.
Adjustable Levels – Choose the number of levels to divide the price range for detailed analysis.
Dynamic Visualization – Profile lines and labels scale automatically according to volume intensity.
Perfect for traders who want to identify where retail buyers and sellers are most active, key support/resistance levels, and the dominant market sentiment during a given period.
ETF→Symbol GEX & IM Mapper (EN)ETF→Symbol GEX & IM Mapper (EN) — Overview
🔎 Purpose
This indicator lets you paste a levels block (compact or long) with GEX walls, IM range, HVL and BS levels, then maps ETF-based prices to the current symbol using a live/fixed ratio (Diff). It draws lines and labels (color-coded), adds an optional HVL fill (green above / red below), and shows an InfoBox with Basis (CT/BW), optional VIX term structure, and an Auto GEX sign.
🧠 Why it’s useful
Quickly project SPY/QQQ/IWM/DIA levels onto futures, single stocks, or other symbols.
Keep levels consistent intraday with 09:30 NY rebase or manual rebase.
Visual context: Call/Put walls, IM range (+optional SDV bands), HVL, and BS levels, all in one view.
Key Features
ETF→Symbol mapping with live or frozen Diff (rebase at 09:30 NY or manual).
Two input formats:
Compact: price,name separated by ;
Long: natural language tokens separated by ,
GEX walls (L1 highlighted; extra GEX above/below price auto-colored).
IM range (Low/High) with optional SDV ±1/2/3σ bands.
HVL line + conditional fill (green/red) anchored to IM or GEX L1 (auto mode included).
BS levels from block (count configurable).
InfoBox: Basis (CT/BW), VIX state (Contango/Backwardation/Flat), GEX sign (Auto/Manual).
Labels: choose position, offsets, and text size.
Inputs You’ll Use Most
Data source
Use COMPACT block instead of LONG (toggle)
Block format: Auto / Long / Compact
Block text: paste your block (long or compact)
Block levels are in ETF (convert with Diff) (toggle)
Prefer 0DTE variants (toggle)
Extra GEX per side (besides L1)
Mapping / Rebase
Anchor: Rebase 09:30 NY / Manual rebase
Rebase now (+1 to execute)
Use ETF open (manual) and ETF open (manual, today)
Drift alert & threshold
Lines / Labels
Line length by: Bars / Days / Full
Label position: Left / Center / Right
Label offsets: bars / days
Label text size: Tiny / Small / Normal / Large / Huge
Styles
Colors, line widths, and styles for GEX / IM / HVL / SDV / BS
Environment
Basis (CT/BW) on/off, VIX on/off (VIX vs. VIX3M), GEX sign (Auto/Manual), InfoBox on/off
How to Use
Select ETF (SPY/QQQ/IWM/DIA) that corresponds to the levels you paste.
Paste your levels block (Compact or Long).
If your block prices are in the ETF, enable “Block levels are in ETF (convert with Diff)”.
Choose Rebase mode:
Rebase 09:30 NY: freezes Diff at RTH open.
Manual rebase: increment “Rebase now” to capture current Diff.
Tweak line span, label size/position, colors, SDV bands, HVL fill, etc.
(Optional) Enable VIX state and GEX sign = Auto to infer regime from VIX term/Basis/HVL.
Compact Block — Format & Example
Format:
Each item: price,name
Separate items with ;
Optional width tag: l1 / l2 / l3 (L1 is thickest)
Names you can use:
Call Wall, Put Wall, HVL, IM, GEX N, BS N
Examples of name variants recognized: Call Wall, Put Wall, HVL, IM, GEX 1, BS 3
Example (Compact):
455.0,Call Wall,l1; 448.0,Put Wall,l1; 451.2,HVL;
450.0,IM; 452.5,IM;
456.5,GEX 2; 447.2,GEX 3;
449.0,BS 1; 453.0,BS 2
Tip: If the Compact block is in ETF prices, toggle Block levels are in ETF (convert with Diff).
Long Block — Tokens & Example
Guidelines:
Separate tokens with ,.
The parser looks for keywords (EN/ES) and grabs the last number in that token.
Recognized tokens (English & Spanish):
Call Wall (L1): "call wall …", "call resistance …", "resistencia call …"
Put Wall (L1): "put wall …", "soporte put …"
0DTE variants: add "0dte" (e.g., "call wall 0dte 456"). If Prefer 0DTE is ON, 0DTE overrides standard.
HVL: "hvl …"
IM range: "1d min …", "1 d min …", "1d max …", "1 d max …"
GEX N: "gex N …"
BS N: "bs N …"
Example (Long):
Call Wall 0DTE 455, Put Wall 0DTE 448, HVL 451.2,
1d min 450, 1d max 452.5,
GEX 2 456.5, GEX 3 447.2,
BS 1 449, BS 2 453
Note: If your Long block is in ETF prices, enable Block levels are in ETF (convert with Diff).
Visual Conventions
Call Wall (L1): green line; Put Wall (L1): red line.
Extra GEX (above/below): auto-colored by side of current price; first extra = L2 (thicker), then L3.
IM Low / High: blue lines (with optional SDV bands).
HVL: blue line + fill (green above / red below) clipped to IM or GEX L1 span (per setting).
BS: gray lines.
Tips & Notes
Use Drift Alert to know when to rebase (e.g., after large intraday divergence).
Auto GEX sign can be based on VIX term (VIX3M vs VIX), Basis (CT/BW), or Price vs HVL.
Label text size controls label readability; adjust offsets to avoid overlaps.
If nothing draws, verify:
You pasted some block.
Block levels are in ETF toggle matches your block.
Token names match the formats above (case-insensitive).
Disclaimer
This is an educational tool for visualization. It does not constitute financial advice. Always do your own research and manage risk.
Opening Range Suite by SBSniperOpening Range Suite
An all-in-one opening-range tool suite. It draws the 30-second, 5-minute, and 30-minute opening ranges for the AM session (09:30 NY). Each range is highlighted with a rectangle (high/low with midpoint) and can display a full pack of projection levels.
⸻
What it draws
• AM 09:30 ORs: 30s, 5m, 30m ranges.
• Midpoint line inside each box.
• Projections from the opening range (measured both High→Low and Low→High) at:
−0.5, −1, −1.5, −2, −2.5, −3, −3.5, −4.
• Text labels inside rectangles (fixed text):
AM — “OR 30sec / OR 5min / OR 30min”; PM — “PM 30sec / PM 5min / PM 30min”.
⸻
Smart behavior
• Today always extends to the current bar (so the current session’s box grows with price/time).
• Previous 5 days of each selected range are shown and, by default, extend to 12:00 NY for AM and 16:00 NY for PM (2.5h span).
Toggle available to extend previous 5 out to the current bar instead.
• Projection day cap: You choose how many recent days (including today) draw projection lines. This prevents chart clutter and avoids TradingView object limits.
• Weekend skip: Automatically ignores Saturdays and Sundays based on New York time.
• Single label toggle: Turn all labels on/off; styling and text are fixed for clarity and consistency.
⸻
How ranges are calculated
• The script anchors to New York local time and detects:
• AM session: 09:30 → grabs the 30s/5m/30m bar(s) that open at 09:30:00 NY.
• Each range uses the bar’s high/low, draws a rectangle spanning the selected time window, and plots the midpoint.
⸻
Notes & best practices
• The 30-second OR requires a symbol/data plan that provides 30-second bars. If your feed doesn’t have 30s, keep the 30s toggles off and use 5m/30m.
• Use on intraday charts. The tool relies on bar times to align with NY session opens.
• For non-US symbols or 24/7 markets, NY anchoring still works; just be aware that “open” is tied to 09:30 New York time.
SAPSAN TRADE: Trend LineSAPSAN TRADE: Trend Line
This indicator automatically detects ascending and descending trend lines based on recent pivot highs and lows. It helps traders visually identify key levels of support and resistance, and provides alerts when a trend line is broken.
Key Features:
Automatic detection of trend lines using fractal highs and lows.
Customizable fractal length and minimum touches for drawing trend lines.
Differentiates between active and broken lines with color coding:
Red for descending lines
Green for ascending lines
Gray for broken lines
Automatic removal of broken lines after a configurable number of bars.
Alerts for:
Any trend line break
Descending trend line break
Ascending trend line break
Use Cases:
Identify potential breakout and reversal points.
Track the current trend direction.
Combine with other technical indicators for confirmation.
Inputs:
Fractal Length (Global High/Low): Sets the number of bars used to detect pivot points.
Remove broken line after N bars: Automatically clears broken lines after the specified number of bars.
Min. touches for trend line: Minimum number of pivot points required to draw a trend line.
Active line colors: Customize colors for ascending and descending trend lines.
Broken line color: Customize the color of broken trend lines.
Opening Candle & Previous Day High and Low LevelsOpening Candle & Previous Day High/Low
This indicator automatically plots important reference levels that many traders use as key decision points:
Opening Candle High/Low
• Draws horizontal rays from the day’s opening candle (default 5-minute, adjustable).
• Choose between regular trading hours (09:30–16:00) or extended hours (pre/post-market).
• Fully customizable colors, styles, and widths.
Previous Day High/Low
• Marks the prior day’s high and low for easy reference.
• Works in both RTH-only or 24-hour session modes.
• Customizable styling for clarity on any chart.
Alerts
• Alerts can be triggered when price touches/crosses a level or comes near it.
• “Near” mode supports absolute points, percent of price, or ATR multiples.
• Users can monitor one specific line (Open High, Open Low, Prev High, Prev Low) or all levels together.
• Option to use intra-bar wick detection (immediate) or close-only confirmation.
Labels
• Optional price labels at the last bar, clearly identifying each active level.
-- How to Use It
TLDR: This indicator helps you track the opening range and the previous days highs/lows with alerts and automatically drawn & customizable lines. This is useful for intraday setups and swing strategies alike.
Day Trading:
• Opening range high/low helps spot early breakouts, breakdowns, and false moves. Good for positioning for Long or Short trades as well as SL areas.
• Prior day’s high/low often act as support/resistance zones where momentum stalls or accelerates.
• Alerts let you focus on scanning while the script tracks levels for you.
Large-Cap Swing Trading:
• Previous day’s high/low highlight areas institutions often defend or break through.
• Opening range levels provide short-term confirmation zones for swing entries.
• Monitoring how price reacts to these levels across multiple days can signal trend continuation or reversal on large-cap names.
Range Trading Strategy
This indicator automatically marks the intraday trading range defined by the first four hours of the New York session (6:00 AM to 10:00 AM EST/EDT).
It calculates the highest high and lowest low within that window on a user-selected calculation timeframe, then projects those levels forward as horizontal lines that remain visible across any chart timeframe.
The lines can be displayed in real time while the window is forming or locked once the session ends, and optional price labels and background shading make the range easy to track.
Traders can use these reference levels to monitor potential breakout or reversal zones, manage risk, and plan entries/exits relative to the early session’s defined support and resistance.
For training check this video youtu.be
Stockbee ComboBearCustom indicator for identifying stocks that meet the Stockbee's ComboBear criteria. This can be used as a standalone indicator or use it to screen for stocks in Pine Screener.
ComboBearCustom indicator for identifying stocks that meet the Stockbee's ComboBear criteria. This can be used as a standalone indicator or use it to screen for stocks in Pine Screener.
Stockbee ComboBullCustom indicator for identifying stocks that meet the ComboBull criteria. This can be used as a standalone indicator or use it to screen for stocks in Pine Screener.
Bar NumbersBar Numbers is a simple utility indicator that helps traders keep track of bar counts during the Regular Trading Hours (RTH) or any intraday session.
🔹 Key Features:
Automatically numbers candles/bar counts starting fresh each new trading day.
Option to display numbers at custom intervals (e.g., every 1, 2, 3, 5 bars, etc.) via the “Display every X bars” input.
The first bar of each new day is always labeled, making it easy to reset visual tracking.
Adjustable label size (Tiny → Huge) for better readability.
Clean design: black numbers, transparent background, fixed below the bars for stability when zooming or scrolling.
🔹 How to Use:
Add the indicator to your chart.
Adjust the “Display every X bars” setting to control the spacing of numbers.
Change label size from the settings to fit your chart style.
Works best on intraday charts for bar-counting strategies, session analysis, or training purposes.
This tool is especially useful for:
Bar-by-bar analysis.
Practicing candle counting strategies.
Structuring setups where bar sequence matters (e.g., breakout bars, inside bars, or timed entries).
crypto_billionairesss 5min BTC ETH BNBThis indicator is based on a Moving Average Baseline and Heikin Ashi candles, optimized mainly for the 5-minute timeframe on Bitcoin, Ethereum and BNB.
It has shown around 45% win rate with a 1:2 risk-to-reward ratio.
Depending on market conditions, it can also be applied to other timeframes and assets.
From the settings panel, you can experiment with optional filters such as RSI or Body-Cross, which may provide better performance in certain market environments.
This tool is designed for traders who want a simple yet effective system for capturing the start of trend movements.
Valid Monthly LevelsValid Monthly Levels (No Sweeps) + Smart Labels
This tool automatically plots the highs and lows of each completed monthly candle and tracks their validity in real time. A level is considered valid until it has been swept (price trades strictly beyond that high or low). Once swept, the line and label can either be removed or dimmed depending on your settings.
Key features:
Monthly highs and lows: Each month’s range is marked with horizontal levels that extend forward.
Valid vs. swept logic: Levels are only valid until breached; swept levels can be hidden or kept as dotted/grey lines.
Smart labels: Each level is labeled with the month and year (e.g., Sep ’25 H/L). On higher timeframes, labels sit at the candle; on lower timeframes, labels automatically shift to the right edge so they don’t disappear off-screen.
Customizable appearance: Choose colors for highs, lows, and swept levels; adjust line styles; and limit how many past months are shown.
Clutter control: Cap the maximum number of labels, so your chart stays readable even on small intraday timeframes.
This indicator is useful for traders who track monthly supply/demand extremes, liquidity sweeps, and higher-timeframe context when executing on lower timeframes.
Higher Lows, Lower Highs & Failures (updated)Use the Big triangles bullish or bearish, stop at the previous bull or bear indication, hold until the opposite indication. Can't guarantee anything. This is built for the 1m chart
Turtle Trading System (Not Financial Advise)I am testing this script, not financial advise, but this is how it works, i hope;
How the Script Works
The script is a TradingView strategy that backtests and automates the Turtle rules. It uses two systems, a short-term S1 (20-day) and a long-term S2 (55-day), which you can select to test.
The strategy follows these core principles:
Trend Identification: The script uses Donchian Channels to identify breakouts. A new trend is signaled when the price breaks above the highest high or below the lowest low of a specified period.
Position Sizing: The script automatically calculates the size of each trade unit to ensure you risk a consistent percentage of your capital on every trade. This is based on the Average True Range (ATR), which measures volatility.
Pyramiding: When a trade moves in a profitable direction, the script will add more units at specific intervals to increase your position and ride the trend. This is how the Turtles made their big profits.
Win/Loss Condition:
A crucial rule is implemented for System 1 (S1): you only enter a trade if the previous S1 trade was a loss. If the last S1 trade was a win, you must wait for a signal from System 2 (S2).
How to Enter and Exit a Long Position
The script will automatically enter a long position when the price breaks above the highest high of the last 20 days (S1) or 55 days (S2), depending on which system you've selected.
Stop-Loss (SL): Your stop-loss is automatically placed at a distance of 2 * N (ATR) below the entry price. . This is a crucial risk management rule that limits your potential loss. The stop-loss is also plotted visually on the chart.
Exit Long: The script will close the long position automatically under two conditions:
Reversal: The price drops and closes below the lowest low of the last 10 days (S1) or 20 days (S2).
Stop-Loss Hit: The price hits your initial stop-loss, limiting your loss.
How to Enter and Exit a Short Position
Enter Short: The script will automatically enter a short position when the price breaks below the lowest low of the last 20 days (S1) or 55 days (S2).
Stop-Loss (SL): Your stop-loss is automatically placed at a distance of 2 * N (ATR) above the entry price. . This prevents large losses if the price moves against you.
Exit Short: The script will close the short position automatically under two conditions:
Reversal: The price rallies and closes above the highest high of the last 10 days (S1) or 20 days (S2).
Stop-Loss Hit: The price hits your initial stop-loss, limiting your loss.
通貨強弱メーター [DoN]This indicator is a tool that applies the Gann trend analysis method to multiple currency pairs, extracts the individual strength and weakness of each currency, and scores them. It helps you understand at a glance which currencies are being bought and which are being sold across the entire market. This allows you, for example, to identify the pair of the "strongest currency" and the "weakest currency" and utilize this as reference information when formulating your trading strategy.
このインジケーターは、Gann トレンド分析手法を複数の通貨ペアに適用し、そこから各通貨単体の強弱を抽出してスコア化するツールです。市場全体でどの通貨が買われていて、どの通貨が売られているのかを一目で把握するのに役立ちます。これにより、例えば「最も強い通貨」と「最も弱い通貨」のペアを見つけ出し、トレード戦略を立てる際の参考情報として活用できます。
Engulfing Candles Tarama// This Pine Scriptâ„¢ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © dipavcisi0007
//@version=5
indicator('Engulfing Candles Tarama', overlay=true)
longer = ta.sma(close, 50)
short = ta.sma(close, 20)
length1 = input(14)
price = close
length = input.int(20, minval=1)
ad = close == high and close == low or high == low ? 0 : (close - open) / (high - low) * volume
//ad = close==high and close==low or high==low ? 0 : ((2*close-low-high)/(high-low))*volume
mf = math.sum(ad, length) / math.sum(volume, length)
crsis = mf
openBarCurrent1 = open
closeBarCurrent1 = close
highBarCurrent1 = high
lowBarCurrent1 = low
volumeBarCurrent1 = volume
topvolumeBarCurrent1 = math.sum(volume , 50) / 50
BarOran1 = (closeBarCurrent1 - openBarCurrent1) / (highBarCurrent1 - lowBarCurrent1)
//BarOran1=(2*closeBarCurrent1-lowBarCurrent1-highBarCurrent1)/(highBarCurrent1-lowBarCurrent1)
openBarCurrent2 = open
closeBarCurrent2 = close
highBarCurrent2 = high
lowBarCurrent2 = low
volumeBarCurrent2 = volume
topvolumeBarCurrent2 = math.sum(volume , 50) / 50
BarOran2 = (closeBarCurrent2 - openBarCurrent2) / (highBarCurrent2 - lowBarCurrent2)
//BarOran2=(2*closeBarCurrent2-lowBarCurrent2-highBarCurrent2)/(highBarCurrent2-lowBarCurrent2)
openBarCurrent3 = open
closeBarCurrent3 = close
highBarCurrent3 = high
lowBarCurrent3 = low
volumeBarCurrent3 = volume
topvolumeBarCurrent3 = math.sum(volume , 50) / 50
BarOran3 = (closeBarCurrent3 - openBarCurrent3) / (highBarCurrent3 - lowBarCurrent3)
//BarOran3=(2*closeBarCurrent3-lowBarCurrent3-highBarCurrent3)/(highBarCurrent3-lowBarCurrent3)
cmi = 0.15
oran = 0.90
katsayi = 1.05
stoporan = 1
length2 = input(14)
price1 = close
vrsi = ta.rsi(price1, length2)
//If current bar open is less than equal to the previous bar close AND current bar open is less than previous bar open AND current bar close is greater than previous bar open THEN True
bullishEngulfing1 = BarOran1 > oran and BarOran1 * volumeBarCurrent1 > topvolumeBarCurrent1 * katsayi and crsis > cmi and close > highBarCurrent1
//If current bar open is greater than equal to previous bar close AND current bar open is greater than previous bar open AND current bar close is less than previous bar open THEN True
bullishEngulfing2 = BarOran2 > oran and BarOran2 * volumeBarCurrent2 > topvolumeBarCurrent2 * katsayi and crsis > cmi and close > highBarCurrent2
//If current bar open is greater than equal to previous bar close AND current bar open is greater than previous bar open AND current bar close is less than previous bar open THEN True
bullishEngulfing3 = BarOran3 > oran and BarOran3 * volumeBarCurrent3 > topvolumeBarCurrent3 * katsayi and crsis > cmi and close > highBarCurrent3
var K1 = 0.0
res = input.timeframe(title='Time Frame', defval='D')
if bullishEngulfing1
K1 := lowBarCurrent1
else if bullishEngulfing2
K1 := lowBarCurrent2
else if bullishEngulfing3
K1 := lowBarCurrent3
plot(K1, linewidth=2, color=color.new(color.purple, 0), title='TSL')
//bullishEngulfing/bearishEngulfing return a value of 1 or 0; if 1 then plot on chart, if 0 then don't plot
plotshape(bullishEngulfing1 or bullishEngulfing2 or bullishEngulfing3, style=shape.triangleup, location=location.belowbar, color=color.new(#43A047, 0), size=size.tiny)
////////////////////////
grupSec = input.string(defval='1', options= , group='Taraması yapılacak 40\'arlı gruplardan birini seçin', title='Grup seç')
per = input.timeframe(defval='', title='PERİYOT',group = "Tarama yapmak istediğiniz periyotu seçin")
func() =>
cond = bullishEngulfing1 or bullishEngulfing2 or bullishEngulfing3
//GRUP VE TARANACAK HİSSE SAYISINI AYNI ÅEKİLDE DİLEDİÄİNİZ GİBİ ARTIRABİLİRSİNİZ.
a01 = grupSec == '1' ? 'BIST:A1CAP' : grupSec == '2' ? 'BIST:ANSGR' : grupSec == '3' ? 'BIST:BEYAZ' : grupSec == '4' ? 'BIST:CEMZY' : grupSec == '5' ? 'BIST:DURKN' : grupSec == '6' ? 'BIST:EUYO' : grupSec == '7' ? 'BIST:HALKB' : grupSec == '8' ? 'BIST:ISGYO' : grupSec == '9' ? 'BIST:KOPOL' : grupSec == '10' ? 'BIST:MARKA' : grupSec == '11' ? 'BIST:ONCSM' : grupSec == '12' ? 'BIST:POLTK' : grupSec == '13' ? 'BIST:SISE' : grupSec == '14' ? 'BIST:TOASO' : grupSec == '15' ? 'BIST:YBTAS' : na
a02 = grupSec == '1' ? 'BIST:ACSEL' : grupSec == '2' ? 'BIST:ARASE' : grupSec == '3' ? 'BIST:BFREN' : grupSec == '4' ? 'BIST:CEOEM' : grupSec == '5' ? 'BIST:DYOBY' : grupSec == '6' ? 'BIST:EYGYO' : grupSec == '7' ? 'BIST:HATEK' : grupSec == '8' ? 'BIST:ISKPL' : grupSec == '9' ? 'BIST:KORDS' : grupSec == '10' ? 'BIST:MARTI' : grupSec == '11' ? 'BIST:ONRYT' : grupSec == '12' ? 'BIST:PRDGS' : grupSec == '13' ? 'BIST:SKBNK' : grupSec == '14' ? 'BIST:TRCAS' : grupSec == '15' ? 'BIST:YEOTK' : na
a03 = grupSec == '1' ? 'BIST:ADEL' : grupSec == '2' ? 'BIST:ARCLK' : grupSec == '3' ? 'BIST:BIENY' : grupSec == '4' ? 'BIST:CIMSA' : grupSec == '5' ? 'BIST:DZGYO' : grupSec == '6' ? 'BIST:FADE' : grupSec == '7' ? 'BIST:HATSN' : grupSec == '8' ? 'BIST:ISKUR' : grupSec == '9' ? 'BIST:KOTON' : grupSec == '10' ? 'BIST:MAVI' : grupSec == '11' ? 'BIST:ORCAY' : grupSec == '12' ? 'BIST:PRKAB' : grupSec == '13' ? 'BIST:SKTAS' : grupSec == '14' ? 'BIST:TRGYO' : grupSec == '15' ? 'BIST:YESIL' : na
a04 = grupSec == '1' ? 'BIST:ADESE' : grupSec == '2' ? 'BIST:ARDYZ' : grupSec == '3' ? 'BIST:BIGCH' : grupSec == '4' ? 'BIST:CLEBI' : grupSec == '5' ? 'BIST:EBEBK' : grupSec == '6' ? 'BIST:FENER' : grupSec == '7' ? 'BIST:HDFGS' : grupSec == '8' ? 'BIST:ISMEN' : grupSec == '9' ? 'BIST:KOZAA' : grupSec == '10' ? 'BIST:MEDTR' : grupSec == '11' ? 'BIST:ORGE' : grupSec == '12' ? 'BIST:PRKME' : grupSec == '13' ? 'BIST:SKYLP' : grupSec == '14' ? 'BIST:TRILC' : grupSec == '15' ? 'BIST:YGGYO' : na
a05 = grupSec == '1' ? 'BIST:ADGYO' : grupSec == '2' ? 'BIST:ARENA' : grupSec == '3' ? 'BIST:BIMAS' : grupSec == '4' ? 'BIST:CMBTN' : grupSec == '5' ? 'BIST:ECILC' : grupSec == '6' ? 'BIST:FLAP' : grupSec == '7' ? 'BIST:HEDEF' : grupSec == '8' ? 'BIST:ISSEN' : grupSec == '9' ? 'BIST:KOZAL' : grupSec == '10' ? 'BIST:MEGAP' : grupSec == '11' ? 'BIST:ORMA' : grupSec == '12' ? 'BIST:PRZMA' : grupSec == '13' ? 'BIST:SKYMD' : grupSec == '14' ? 'BIST:TSGYO' : grupSec == '15' ? 'BIST:YGYO' : na
a06 = grupSec == '1' ? 'BIST:AEFES' : grupSec == '2' ? 'BIST:ARSAN' : grupSec == '3' ? 'BIST:BINBN' : grupSec == '4' ? 'BIST:CMENT' : grupSec == '5' ? 'BIST:ECZYT' : grupSec == '6' ? 'BIST:FMIZP' : grupSec == '7' ? 'BIST:HEKTS' : grupSec == '8' ? 'BIST:ISYAT' : grupSec == '9' ? 'BIST:KRDMA' : grupSec == '10' ? 'BIST:MEGMT' : grupSec == '11' ? 'BIST:OSMEN' : grupSec == '12' ? 'BIST:PSDTC' : grupSec == '13' ? 'BIST:SMART' : grupSec == '14' ? 'BIST:TSKB' : grupSec == '15' ? 'BIST:YIGIT' : na
a07 = grupSec == '1' ? 'BIST:AFYON' : grupSec == '2' ? 'BIST:ARTMS' : grupSec == '3' ? 'BIST:BINHO' : grupSec == '4' ? 'BIST:CONSE' : grupSec == '5' ? 'BIST:EDATA' : grupSec == '6' ? 'BIST:FONET' : grupSec == '7' ? 'BIST:HKTM' : grupSec == '8' ? 'BIST:IZENR' : grupSec == '9' ? 'BIST:KRDMB' : grupSec == '10' ? 'BIST:MEKAG' : grupSec == '11' ? 'BIST:OSTIM' : grupSec == '12' ? 'BIST:PSGYO' : grupSec == '13' ? 'BIST:SMRTG' : grupSec == '14' ? 'BIST:TSPOR' : grupSec == '15' ? 'BIST:YKBNK' : na
a08 = grupSec == '1' ? 'BIST:AGESA' : grupSec == '2' ? 'BIST:ARZUM' : grupSec == '3' ? 'BIST:BIOEN' : grupSec == '4' ? 'BIST:COSMO' : grupSec == '5' ? 'BIST:EDIP' : grupSec == '6' ? 'BIST:FORMT' : grupSec == '7' ? 'BIST:HLGYO' : grupSec == '8' ? 'BIST:IZFAS' : grupSec == '9' ? 'BIST:KRDMD' : grupSec == '10' ? 'BIST:MEPET' : grupSec == '11' ? 'BIST:OTKAR' : grupSec == '12' ? 'BIST:QNBFK' : grupSec == '13' ? 'BIST:SNGYO' : grupSec == '14' ? 'BIST:TTKOM' : grupSec == '15' ? 'BIST:YKSLN' : na
a09 = grupSec == '1' ? 'BIST:AGHOL' : grupSec == '2' ? 'BIST:ASELS' : grupSec == '3' ? 'BIST:BIZIM' : grupSec == '4' ? 'BIST:CRDFA' : grupSec == '5' ? 'BIST:EFORC' : grupSec == '6' ? 'BIST:FORTE' : grupSec == '7' ? 'BIST:HOROZ' : grupSec == '8' ? 'BIST:IZINV' : grupSec == '9' ? 'BIST:KRGYO' : grupSec == '10' ? 'BIST:MERCN' : grupSec == '11' ? 'BIST:OTTO' : grupSec == '12' ? 'BIST:QNBTR' : grupSec == '13' ? 'BIST:SNICA' : grupSec == '14' ? 'BIST:TTRAK' : grupSec == '15' ? 'BIST:YONGA' : na
a10 = grupSec == '1' ? 'BIST:AGROT' : grupSec == '2' ? 'BIST:ASGYO' : grupSec == '3' ? 'BIST:BJKAS' : grupSec == '4' ? 'BIST:CRFSA' : grupSec == '5' ? 'BIST:EGEEN' : grupSec == '6' ? 'BIST:FRIGO' : grupSec == '7' ? 'BIST:HRKET' : grupSec == '8' ? 'BIST:IZMDC' : grupSec == '9' ? 'BIST:KRONT' : grupSec == '10' ? 'BIST:MERIT' : grupSec == '11' ? 'BIST:OYAKC' : grupSec == '12' ? 'BIST:QUAGR' : grupSec == '13' ? 'BIST:SNKRN' : grupSec == '14' ? 'BIST:TUCLK' : grupSec == '15' ? 'BIST:YUNSA' : na
a11 = grupSec == '1' ? 'BIST:AGYO' : grupSec == '2' ? 'BIST:ASTOR' : grupSec == '3' ? 'BIST:BLCYT' : grupSec == '4' ? 'BIST:CUSAN' : grupSec == '5' ? 'BIST:EGEPO' : grupSec == '6' ? 'BIST:FROTO' : grupSec == '7' ? 'BIST:HTTBT' : grupSec == '8' ? 'BIST:JANTS' : grupSec == '9' ? 'BIST:KRPLS' : grupSec == '10' ? 'BIST:MERKO' : grupSec == '11' ? 'BIST:OYAYO' : grupSec == '12' ? 'BIST:RALYH' : grupSec == '13' ? 'BIST:SNPAM' : grupSec == '14' ? 'BIST:TUKAS' : grupSec == '15' ? 'BIST:YYAPI' : na
a12 = grupSec == '1' ? 'BIST:AHGAZ' : grupSec == '2' ? 'BIST:ASUZU' : grupSec == '3' ? 'BIST:BMSCH' : grupSec == '4' ? 'BIST:CVKMD' : grupSec == '5' ? 'BIST:EGGUB' : grupSec == '6' ? 'BIST:FZLGY' : grupSec == '7' ? 'BIST:HUBVC' : grupSec == '8' ? 'BIST:KAPLM' : grupSec == '9' ? 'BIST:KRSTL' : grupSec == '10' ? 'BIST:METRO' : grupSec == '11' ? 'BIST:OYLUM' : grupSec == '12' ? 'BIST:RAYSG' : grupSec == '13' ? 'BIST:SODSN' : grupSec == '14' ? 'BIST:TUPRS' : grupSec == '15' ? 'BIST:YYLGD' : na
a13 = grupSec == '1' ? 'BIST:AHSGY' : grupSec == '2' ? 'BIST:ATAGY' : grupSec == '3' ? 'BIST:BMSTL' : grupSec == '4' ? 'BIST:CWENE' : grupSec == '5' ? 'BIST:EGPRO' : grupSec == '6' ? 'BIST:GARAN' : grupSec == '7' ? 'BIST:HUNER' : grupSec == '8' ? 'BIST:KAREL' : grupSec == '9' ? 'BIST:KRTEK' : grupSec == '10' ? 'BIST:METUR' : grupSec == '11' ? 'BIST:OYYAT' : grupSec == '12' ? 'BIST:REEDR' : grupSec == '13' ? 'BIST:SOKE' : grupSec == '14' ? 'BIST:TUREX' : grupSec == '15' ? 'BIST:ZEDUR' : na
a14 = grupSec == '1' ? 'BIST:AKBNK' : grupSec == '2' ? 'BIST:ATAKP' : grupSec == '3' ? 'BIST:BNTAS' : grupSec == '4' ? 'BIST:DAGHL' : grupSec == '5' ? 'BIST:EGSER' : grupSec == '6' ? 'BIST:GARFA' : grupSec == '7' ? 'BIST:HURGZ' : grupSec == '8' ? 'BIST:KARSN' : grupSec == '9' ? 'BIST:KRVGD' : grupSec == '10' ? 'BIST:MGROS' : grupSec == '11' ? 'BIST:OZATD' : grupSec == '12' ? 'BIST:RGYAS' : grupSec == '13' ? 'BIST:SOKM' : grupSec == '14' ? 'BIST:TURGG' : grupSec == '15' ? 'BIST:ZOREN' : na
a15 = grupSec == '1' ? 'BIST:AKCNS' : grupSec == '2' ? 'BIST:ATATP' : grupSec == '3' ? 'BIST:BOBET' : grupSec == '4' ? 'BIST:DAGI' : grupSec == '5' ? 'BIST:EKGYO' : grupSec == '6' ? 'BIST:GEDIK' : grupSec == '7' ? 'BIST:ICBCT' : grupSec == '8' ? 'BIST:KARTN' : grupSec == '9' ? 'BIST:KSTUR' : grupSec == '10' ? 'BIST:MHRGY' : grupSec == '11' ? 'BIST:OZGYO' : grupSec == '12' ? 'BIST:RNPOL' : grupSec == '13' ? 'BIST:SONME' : grupSec == '14' ? 'BIST:TURSG' : grupSec == '15' ? 'BIST:ZRGYO' : na
a16 = grupSec == '1' ? 'BIST:AKENR' : grupSec == '2' ? 'BIST:ATEKS' : grupSec == '3' ? 'BIST:BORLS' : grupSec == '4' ? 'BIST:DAPGM' : grupSec == '5' ? 'BIST:EKIZ' : grupSec == '6' ? 'BIST:GEDZA' : grupSec == '7' ? 'BIST:ICUGS' : grupSec == '8' ? 'BIST:KARYE' : grupSec == '9' ? 'BIST:KTLEV' : grupSec == '10' ? 'BIST:MIATK' : grupSec == '11' ? 'BIST:OZKGY' : grupSec == '12' ? 'BIST:RODRG' : grupSec == '13' ? 'BIST:SRVGY' : grupSec == '14' ? 'BIST:UFUK' : grupSec == '15' ? 'BIST:AKFIS' :na
a17 = grupSec == '1' ? 'BIST:AKFGY' : grupSec == '2' ? 'BIST:ATLAS' : grupSec == '3' ? 'BIST:BORSK' : grupSec == '4' ? 'BIST:DARDL' : grupSec == '5' ? 'BIST:EKOS' : grupSec == '6' ? 'BIST:GENIL' : grupSec == '7' ? 'BIST:IDGYO' : grupSec == '8' ? 'BIST:KATMR' : grupSec == '9' ? 'BIST:KTSKR' : grupSec == '10' ? 'BIST:MMCAS' : grupSec == '11' ? 'BIST:OZRDN' : grupSec == '12' ? 'BIST:ROYAL' : grupSec == '13' ? 'BIST:SUMAS' : grupSec == '14' ? 'BIST:ULAS' : grupSec == '15' ? 'BIST:ARMGD': na
a18 = grupSec == '1' ? 'BIST:AKFYE' : grupSec == '2' ? 'BIST:ATSYH' : grupSec == '3' ? 'BIST:BOSSA' : grupSec == '4' ? 'BIST:DCTTR' : grupSec == '5' ? 'BIST:EKSUN' : grupSec == '6' ? 'BIST:GENTS' : grupSec == '7' ? 'BIST:IEYHO' : grupSec == '8' ? 'BIST:KAYSE' : grupSec == '9' ? 'BIST:KUTPO' : grupSec == '10' ? 'BIST:MNDRS' : grupSec == '11' ? 'BIST:OZSUB' : grupSec == '12' ? 'BIST:RTALB' : grupSec == '13' ? 'BIST:SUNTK' : grupSec == '14' ? 'BIST:ULKER' : grupSec == '15' ? 'BIST:BALSU': na
a19 = grupSec == '1' ? 'BIST:AKGRT' : grupSec == '2' ? 'BIST:AVGYO' : grupSec == '3' ? 'BIST:BRISA' : grupSec == '4' ? 'BIST:DENGE' : grupSec == '5' ? 'BIST:ELITE' : grupSec == '6' ? 'BIST:GEREL' : grupSec == '7' ? 'BIST:IHAAS' : grupSec == '8' ? 'BIST:KBORU' : grupSec == '9' ? 'BIST:KUVVA' : grupSec == '10' ? 'BIST:MNDTR' : grupSec == '11' ? 'BIST:OZYSR' : grupSec == '12' ? 'BIST:RUBNS' : grupSec == '13' ? 'BIST:SURGY' : grupSec == '14' ? 'BIST:ULUFA' : grupSec == '15' ? 'BIST:BESLR':na
a20 = grupSec == '1' ? 'BIST:AKMGY' : grupSec == '2' ? 'BIST:AVHOL' : grupSec == '3' ? 'BIST:BRKO' : grupSec == '4' ? 'BIST:DERHL' : grupSec == '5' ? 'BIST:EMKEL' : grupSec == '6' ? 'BIST:GESAN' : grupSec == '7' ? 'BIST:IHEVA' : grupSec == '8' ? 'BIST:KCAER' : grupSec == '9' ? 'BIST:KUYAS' : grupSec == '10' ? 'BIST:MOBTL' : grupSec == '11' ? 'BIST:PAGYO' : grupSec == '12' ? 'BIST:RYGYO' : grupSec == '13' ? 'BIST:SUWEN' : grupSec == '14' ? 'BIST:ULUSE' : grupSec == '15' ? 'BIST:DSTKF': na
a21 = grupSec == '1' ? 'BIST:AKSA' : grupSec == '2' ? 'BIST:AVOD' : grupSec == '3' ? 'BIST:BRKSN' : grupSec == '4' ? 'BIST:DERIM' : grupSec == '5' ? 'BIST:EMNIS' : grupSec == '6' ? 'BIST:GIPTA' : grupSec == '7' ? 'BIST:IHGZT' : grupSec == '8' ? 'BIST:KCHOL' : grupSec == '9' ? 'BIST:KZBGY' : grupSec == '10' ? 'BIST:MOGAN' : grupSec == '11' ? 'BIST:PAMEL' : grupSec == '12' ? 'BIST:RYSAS' : grupSec == '13' ? 'BIST:TABGD' : grupSec == '14' ? 'BIST:ULUUN' : grupSec == '15' ? 'BIST:GLRMK': na
a22 = grupSec == '1' ? 'BIST:AKSEN' : grupSec == '2' ? 'BIST:AVPGY' : grupSec == '3' ? 'BIST:BRKVY' : grupSec == '4' ? 'BIST:DESA' : grupSec == '5' ? 'BIST:ENERY' : grupSec == '6' ? 'BIST:GLBMD' : grupSec == '7' ? 'BIST:IHLAS' : grupSec == '8' ? 'BIST:KENT' : grupSec == '9' ? 'BIST:KZGYO' : grupSec == '10' ? 'BIST:MPARK' : grupSec == '11' ? 'BIST:PAPIL' : grupSec == '12' ? 'BIST:SAFKR' : grupSec == '13' ? 'BIST:TARKM' : grupSec == '14' ? 'BIST:UMPAS' : grupSec == '15' ? 'BIST:KLYPV': na
a23 = grupSec == '1' ? 'BIST:AKSGY' : grupSec == '2' ? 'BIST:AVTUR' : grupSec == '3' ? 'BIST:BRLSM' : grupSec == '4' ? 'BIST:DESPC' : grupSec == '5' ? 'BIST:ENJSA' : grupSec == '6' ? 'BIST:GLCVY' : grupSec == '7' ? 'BIST:IHLGM' : grupSec == '8' ? 'BIST:KERVN' : grupSec == '9' ? 'BIST:LIDER' : grupSec == '10' ? 'BIST:MRGYO' : grupSec == '11' ? 'BIST:PARSN' : grupSec == '12' ? 'BIST:SAHOL' : grupSec == '13' ? 'BIST:TATEN' : grupSec == '14' ? 'BIST:UNLU' :grupSec == '15' ? 'BIST:MOPAS': na
a24 = grupSec == '1' ? 'BIST:AKSUE' : grupSec == '2' ? 'BIST:AYCES' : grupSec == '3' ? 'BIST:BRMEN' : grupSec == '4' ? 'BIST:DEVA' : grupSec == '5' ? 'BIST:ENKAI' : grupSec == '6' ? 'BIST:GLRYH' : grupSec == '7' ? 'BIST:IHYAY' : grupSec == '8' ? 'BIST:LIDFA' : grupSec == '10' ? 'BIST:MRSHL' : grupSec == '11' ? 'BIST:PASEU' : grupSec == '12' ? 'BIST:SAMAT' : grupSec == '13' ? 'BIST:TATGD' : grupSec == '14' ? 'BIST:USAK' : grupSec == '15' ? 'BIST:A1YEN': na
a25 = grupSec == '1' ? 'BIST:AKYHO' : grupSec == '2' ? 'BIST:AYDEM' : grupSec == '3' ? 'BIST:BRSAN' : grupSec == '4' ? 'BIST:DGATE' : grupSec == '5' ? 'BIST:ENSRI' : grupSec == '6' ? 'BIST:GLYHO' : grupSec == '7' ? 'BIST:IMASM' : grupSec == '8' ? 'BIST:KFEIN' : grupSec == '9' ? 'BIST:LILAK' : grupSec == '10' ? 'BIST:MSGYO' : grupSec == '11' ? 'BIST:PATEK' : grupSec == '12' ? 'BIST:SANEL' : grupSec == '13' ? 'BIST:TAVHL' : grupSec == '14' ? 'BIST:VAKBN' : grupSec == '15' ? 'BIST:BIGEN': na
a26 = grupSec == '1' ? 'BIST:ALARK' : grupSec == '2' ? 'BIST:AYEN' : grupSec == '3' ? 'BIST:BRYAT' : grupSec == '4' ? 'BIST:DGGYO' : grupSec == '5' ? 'BIST:ENTRA' : grupSec == '6' ? 'BIST:GMTAS' : grupSec == '7' ? 'BIST:INDES' : grupSec == '8' ? 'BIST:KGYO' : grupSec == '9' ? 'BIST:LINK' : grupSec == '10' ? 'BIST:MTRKS' : grupSec == '11' ? 'BIST:PCILT' : grupSec == '12' ? 'BIST:SANFM' : grupSec == '13' ? 'BIST:TBORG' : grupSec == '14' ? 'BIST:VAKFN' : grupSec == '15' ? 'BIST:BULGS': na
a27 = grupSec == '1' ? 'BIST:ALBRK' : grupSec == '2' ? 'BIST:AYES' : grupSec == '3' ? 'BIST:BSOKE' : grupSec == '4' ? 'BIST:DGNMO' : grupSec == '5' ? 'BIST:EPLAS' : grupSec == '6' ? 'BIST:GOKNR' : grupSec == '7' ? 'BIST:INFO' : grupSec == '8' ? 'BIST:KIMMR' : grupSec == '9' ? 'BIST:LKMNH' : grupSec == '10' ? 'BIST:MTRYO' : grupSec == '11' ? 'BIST:PEHOL' : grupSec == '12' ? 'BIST:SANKO' : grupSec == '13' ? 'BIST:TCELL' : grupSec == '14' ? 'BIST:VAKKO' : grupSec == '15' ? 'BIST:CGCAM': na
a28 = grupSec == '1' ? 'BIST:ALCAR' : grupSec == '2' ? 'BIST:AYGAZ' : grupSec == '3' ? 'BIST:BTCIM' : grupSec == '4' ? 'BIST:DIRIT' : grupSec == '5' ? 'BIST:ERBOS' : grupSec == '6' ? 'BIST:GOLTS' : grupSec == '7' ? 'BIST:INGRM' : grupSec == '8' ? 'BIST:KLGYO' : grupSec == '9' ? 'BIST:LMKDC' : grupSec == '10' ? 'BIST:MZHLD' : grupSec == '11' ? 'BIST:PEKGY' : grupSec == '12' ? 'BIST:SARKY' : grupSec == '13' ? 'BIST:TCKRC' : grupSec == '14' ? 'BIST:VANGD' : grupSec == '15' ? 'BIST:EGEGY': na
a29 = grupSec == '1' ? 'BIST:ALCTL' : grupSec == '2' ? 'BIST:AZTEK' : grupSec == '3' ? 'BIST:BUCIM' : grupSec == '4' ? 'BIST:DITAS' : grupSec == '5' ? 'BIST:ERCB' : grupSec == '6' ? 'BIST:GOODY' : grupSec == '7' ? 'BIST:INTEK' : grupSec == '8' ? 'BIST:KLKIM' : grupSec == '9' ? 'BIST:LOGO' : grupSec == '10' ? 'BIST:NATEN' : grupSec == '11' ? 'BIST:PENGD' : grupSec == '12' ? 'BIST:SASA' : grupSec == '13' ? 'BIST:TDGYO' : grupSec == '14' ? 'BIST:VBTYZ' : grupSec == '15' ? 'BIST:ENDAE':na
a30 = grupSec == '1' ? 'BIST:ALFAS' : grupSec == '2' ? 'BIST:BAGFS' : grupSec == '3' ? 'BIST:BURCE' : grupSec == '4' ? 'BIST:DMRGD' : grupSec == '5' ? 'BIST:EREGL' : grupSec == '6' ? 'BIST:GOZDE' : grupSec == '7' ? 'BIST:INTEM' : grupSec == '8' ? 'BIST:KLMSN' : grupSec == '9' ? 'BIST:LRSHO' : grupSec == '10' ? 'BIST:NETAS' : grupSec == '11' ? 'BIST:PENTA' : grupSec == '12' ? 'BIST:SAYAS' : grupSec == '13' ? 'BIST:TEKTU' : grupSec == '14' ? 'BIST:VERTU' : grupSec == '15' ? 'BIST:RUZYE': na
a31 = grupSec == '1' ? 'BIST:ALGYO' : grupSec == '2' ? 'BIST:BAHKM' : grupSec == '3' ? 'BIST:BURVA' : grupSec == '4' ? 'BIST:DMSAS' : grupSec == '5' ? 'BIST:ERSU' : grupSec == '6' ? 'BIST:GRNYO' : grupSec == '7' ? 'BIST:INVEO' : grupSec == '8' ? 'BIST:KLNMA' : grupSec == '9' ? 'BIST:LUKSK' : grupSec == '10' ? 'BIST:NIBAS' : grupSec == '11' ? 'BIST:PETKM' : grupSec == '12' ? 'BIST:SDTTR' : grupSec == '13' ? 'BIST:TERA' : grupSec == '14' ? 'BIST:VERUS' : grupSec == '15' ? 'BIST:SERNT': na
a32 = grupSec == '1' ? 'BIST:ALKA' : grupSec == '2' ? 'BIST:BAKAB' : grupSec == '3' ? 'BIST:BVSAN' : grupSec == '4' ? 'BIST:DNISI' : grupSec == '5' ? 'BIST:ESCAR' : grupSec == '6' ? 'BIST:GRSEL' : grupSec == '7' ? 'BIST:INVES' : grupSec == '8' ? 'BIST:KLRHO' : grupSec == '9' ? 'BIST:LYDHO' : grupSec == '10' ? 'BIST:NTGAZ' : grupSec == '11' ? 'BIST:PETUN' : grupSec == '12' ? 'BIST:SEGMN' : grupSec == '13' ? 'BIST:TEZOL' : grupSec == '14' ? 'BIST:VESBE' : grupSec == '15' ? 'BIST:SMRVA':na
a33 = grupSec == '1' ? 'BIST:ALKIM' : grupSec == '2' ? 'BIST:BALAT' : grupSec == '3' ? 'BIST:BYDNR' : grupSec == '4' ? 'BIST:DOAS' : grupSec == '5' ? 'BIST:ESCOM' : grupSec == '6' ? 'BIST:GRTHO' : grupSec == '7' ? 'BIST:IPEKE' : grupSec == '8' ? 'BIST:KLSER' : grupSec == '9' ? 'BIST:LYDYE' : grupSec == '10' ? 'BIST:NTHOL' : grupSec == '11' ? 'BIST:PGSUS' : grupSec == '12' ? 'BIST:SEGYO' : grupSec == '13' ? 'BIST:TGSAS' : grupSec == '14' ? 'BIST:VESTL' : grupSec == '15' ? 'BIST:VSNMD':na
a34 = grupSec == '1' ? 'BIST:ALKLC' : grupSec == '2' ? 'BIST:BANVT' : grupSec == '3' ? 'BIST:CANTE' : grupSec == '4' ? 'BIST:DOBUR' : grupSec == '5' ? 'BIST:ESEN' : grupSec == '6' ? 'BIST:GSDDE' : grupSec == '7' ? 'BIST:ISATR' : grupSec == '8' ? 'BIST:KLSYN' : grupSec == '9' ? 'BIST:MAALT' : grupSec == '10' ? 'BIST:NUGYO' : grupSec == '11' ? 'BIST:PINSU' : grupSec == '12' ? 'BIST:SEKFK' : grupSec == '13' ? 'BIST:THYAO' : grupSec == '14' ? 'BIST:VKFYO' : na
a35 = grupSec == '1' ? 'BIST:ALMAD' : grupSec == '2' ? 'BIST:BARMA' : grupSec == '3' ? 'BIST:CASA' : grupSec == '4' ? 'BIST:DOCO' : grupSec == '5' ? 'BIST:ETILR' : grupSec == '6' ? 'BIST:GSDHO' : grupSec == '7' ? 'BIST:ISBIR' : grupSec == '8' ? 'BIST:KMPUR' : grupSec == '9' ? 'BIST:MACKO' : grupSec == '10' ? 'BIST:NUHCM' : grupSec == '11' ? 'BIST:PKART' : grupSec == '12' ? 'BIST:SEKUR' : grupSec == '13' ? 'BIST:TKFEN' : grupSec == '14' ? 'BIST:VKGYO' : na
a36 = grupSec == '1' ? 'BIST:ALTNY' : grupSec == '2' ? 'BIST:BASCM' : grupSec == '3' ? 'BIST:CATES' : grupSec == '4' ? 'BIST:DOFER' : grupSec == '5' ? 'BIST:ETYAT' : grupSec == '6' ? 'BIST:GSRAY' : grupSec == '7' ? 'BIST:ISBTR' : grupSec == '8' ? 'BIST:KNFRT' : grupSec == '9' ? 'BIST:MAGEN' : grupSec == '10' ? 'BIST:OBAMS' : grupSec == '11' ? 'BIST:PKENT' : grupSec == '12' ? 'BIST:SELEC' : grupSec == '13' ? 'BIST:TKNSA' : grupSec == '14' ? 'BIST:VKING' : na
a37 = grupSec == '1' ? 'BIST:ALVES' : grupSec == '2' ? 'BIST:BASGZ' : grupSec == '3' ? 'BIST:CCOLA' : grupSec == '4' ? 'BIST:DOGUB' : grupSec == '5' ? 'BIST:EUHOL' : grupSec == '6' ? 'BIST:GUBRF' : grupSec == '7' ? 'BIST:ISCTR' : grupSec == '8' ? 'BIST:KOCMT' : grupSec == '9' ? 'BIST:MAKIM' : grupSec == '10' ? 'BIST:OBASE' : grupSec == '11' ? 'BIST:PLTUR' : grupSec == '12' ? 'BIST:SELGD' : grupSec == '13' ? 'BIST:TLMAN' : grupSec == '14' ? 'BIST:VRGYO' : na
a38 = grupSec == '1' ? 'BIST:ANELE' : grupSec == '2' ? 'BIST:BAYRK' : grupSec == '3' ? 'BIST:CELHA' : grupSec == '4' ? 'BIST:DOHOL' : grupSec == '5' ? 'BIST:EUKYO' : grupSec == '6' ? 'BIST:GUNDG' : grupSec == '7' ? 'BIST:ISDMR' : grupSec == '8' ? 'BIST:KONKA' : grupSec == '9' ? 'BIST:MAKTK' : grupSec == '10' ? 'BIST:ODAS' : grupSec == '11' ? 'BIST:PNLSN' : grupSec == '12' ? 'BIST:SELVA' : grupSec == '13' ? 'BIST:TMPOL' : grupSec == '14' ? 'BIST:YAPRK' : na
a39 = grupSec == '1' ? 'BIST:ANGEN' : grupSec == '2' ? 'BIST:BEGYO' : grupSec == '3' ? 'BIST:CEMAS' : grupSec == '4' ? 'BIST:DOKTA' : grupSec == '5' ? 'BIST:EUPWR' : grupSec == '6' ? 'BIST:GWIND' : grupSec == '7' ? 'BIST:ISFIN' : grupSec == '8' ? 'BIST:KONTR' : grupSec == '9' ? 'BIST:MANAS' : grupSec == '10' ? 'BIST:ODINE' : grupSec == '11' ? 'BIST:PNSUT' : grupSec == '12' ? 'BIST:SEYKM' : grupSec == '13' ? 'BIST:TMSN' : grupSec == '14' ? 'BIST:YATAS' : na
a40 = grupSec == '1' ? 'BIST:ANHYT' : grupSec == '2' ? 'BIST:BERA' : grupSec == '3' ? 'BIST:CEMTS' : grupSec == '4' ? 'BIST:DURDO' : grupSec == '5' ? 'BIST:EUREN' : grupSec == '6' ? 'BIST:GZNMI' : grupSec == '7' ? 'BIST:ISGSY' : grupSec == '8' ? 'BIST:KONYA' : grupSec == '9' ? 'BIST:MARBL' : grupSec == '10' ? 'BIST:OFSYM' : grupSec == '11' ? 'BIST:POLHO' : grupSec == '12' ? 'BIST:SILVR' : grupSec == '13' ? 'BIST:TNZTP' : grupSec == '14' ? 'BIST:YAYLA' : na
= request.security(a01, per, func())
= request.security(a02, per, func())
= request.security(a03, per, func())
= request.security(a04, per, func())
= request.security(a05, per, func())
= request.security(a06, per, func())
= request.security(a07, per, func())
= request.security(a08, per, func())
= request.security(a09, per, func())
= request.security(a10, per, func())
= request.security(a11, per, func())
= request.security(a12, per, func())
= request.security(a13, per, func())
= request.security(a14, per, func())
= request.security(a15, per, func())
= request.security(a16, per, func())
= request.security(a17, per, func())
= request.security(a18, per, func())
= request.security(a19, per, func())
= request.security(a20, per, func())
= request.security(a21, per, func())
= request.security(a22, per, func())
= request.security(a23, per, func())
= request.security(a24, per, func())
= request.security(a25, per, func())
= request.security(a26, per, func())
= request.security(a27, per, func())
= request.security(a28, per, func())
= request.security(a29, per, func())
= request.security(a30, per, func())
= request.security(a31, per, func())
= request.security(a32, per, func())
= request.security(a33, per, func())
= request.security(a34, per, func())
= request.security(a35, per, func())
= request.security(a36, per, func())
= request.security(a37, per, func())
= request.security(a38, per, func())
= request.security(a39, per, func())
= request.security(a40, per, func())
roundn(x, n) =>
mult = 1
if n != 0
for i = 1 to math.abs(n) by 1
mult *= 10
mult
n >= 0 ? math.round(x * mult) / mult : math.round(x / mult) * mult
scr_label = 'TARAMA '
scr_label := s1 ? scr_label + syminfo.ticker(a01) + ' ' + str.tostring(roundn(v1, 2)) + ' ' : scr_label
scr_label := s2 ? scr_label + syminfo.ticker(a02) + ' ' + str.tostring(roundn(v2, 2)) + ' ' : scr_label
scr_label := s3 ? scr_label + syminfo.ticker(a03) + ' ' + str.tostring(roundn(v3, 2)) + ' ' : scr_label
scr_label := s4 ? scr_label + syminfo.ticker(a04) + ' ' + str.tostring(roundn(v4, 2)) + ' ' : scr_label
scr_label := s5 ? scr_label + syminfo.ticker(a05) + ' ' + str.tostring(roundn(v5, 2)) + ' ' : scr_label
scr_label := s6 ? scr_label + syminfo.ticker(a06) + ' ' + str.tostring(roundn(v6, 2)) + ' ' : scr_label
scr_label := s7 ? scr_label + syminfo.ticker(a07) + ' ' + str.tostring(roundn(v7, 2)) + ' ' : scr_label
scr_label := s8 ? scr_label + syminfo.ticker(a08) + ' ' + str.tostring(roundn(v8, 2)) + ' ' : scr_label
scr_label := s9 ? scr_label + syminfo.ticker(a09) + ' ' + str.tostring(roundn(v9, 2)) + ' ' : scr_label
scr_label := s10 ? scr_label + syminfo.ticker(a10) + ' ' + str.tostring(roundn(v10, 2)) + ' ' : scr_label
scr_label := s11 ? scr_label + syminfo.ticker(a11) + ' ' + str.tostring(roundn(v11, 2)) + ' ' : scr_label
scr_label := s12 ? scr_label + syminfo.ticker(a12) + ' ' + str.tostring(roundn(v12, 2)) + ' ' : scr_label
scr_label := s13 ? scr_label + syminfo.ticker(a13) + ' ' + str.tostring(roundn(v13, 2)) + ' ' : scr_label
scr_label := s14 ? scr_label + syminfo.ticker(a14) + ' ' + str.tostring(roundn(v14, 2)) + ' ' : scr_label
scr_label := s15 ? scr_label + syminfo.ticker(a15) + ' ' + str.tostring(roundn(v15, 2)) + ' ' : scr_label
scr_label := s16 ? scr_label + syminfo.ticker(a16) + ' ' + str.tostring(roundn(v16, 2)) + ' ' : scr_label
scr_label := s17 ? scr_label + syminfo.ticker(a17) + ' ' + str.tostring(roundn(v17, 2)) + ' ' : scr_label
scr_label := s18 ? scr_label + syminfo.ticker(a18) + ' ' + str.tostring(roundn(v18, 2)) + ' ' : scr_label
scr_label := s19 ? scr_label + syminfo.ticker(a19) + ' ' + str.tostring(roundn(v19, 2)) + ' ' : scr_label
scr_label := s20 ? scr_label + syminfo.ticker(a20) + ' ' + str.tostring(roundn(v20, 2)) + ' ' : scr_label
scr_label := s21 ? scr_label + syminfo.ticker(a21) + ' ' + str.tostring(roundn(v21, 2)) + ' ' : scr_label
scr_label := s22 ? scr_label + syminfo.ticker(a22) + ' ' + str.tostring(roundn(v22, 2)) + ' ' : scr_label
scr_label := s23 ? scr_label + syminfo.ticker(a23) + ' ' + str.tostring(roundn(v23, 2)) + ' ' : scr_label
scr_label := s24 ? scr_label + syminfo.ticker(a24) + ' ' + str.tostring(roundn(v24, 2)) + ' ' : scr_label
scr_label := s25 ? scr_label + syminfo.ticker(a25) + ' ' + str.tostring(roundn(v25, 2)) + ' ' : scr_label
scr_label := s26 ? scr_label + syminfo.ticker(a26) + ' ' + str.tostring(roundn(v26, 2)) + ' ' : scr_label
scr_label := s27 ? scr_label + syminfo.ticker(a27) + ' ' + str.tostring(roundn(v27, 2)) + ' ' : scr_label
scr_label := s28 ? scr_label + syminfo.ticker(a28) + ' ' + str.tostring(roundn(v28, 2)) + ' ' : scr_label
scr_label := s29 ? scr_label + syminfo.ticker(a29) + ' ' + str.tostring(roundn(v29, 2)) + ' ' : scr_label
scr_label := s30 ? scr_label + syminfo.ticker(a30) + ' ' + str.tostring(roundn(v30, 2)) + ' ' : scr_label
scr_label := s31 ? scr_label + syminfo.ticker(a31) + ' ' + str.tostring(roundn(v31, 2)) + ' ' : scr_label
scr_label := s32 ? scr_label + syminfo.ticker(a32) + ' ' + str.tostring(roundn(v32, 2)) + ' ' : scr_label
scr_label := s33 ? scr_label + syminfo.ticker(a33) + ' ' + str.tostring(roundn(v33, 2)) + ' ' : scr_label
scr_label := s34 ? scr_label + syminfo.ticker(a34) + ' ' + str.tostring(roundn(v34, 2)) + ' ' : scr_label
scr_label := s35 ? scr_label + syminfo.ticker(a35) + ' ' + str.tostring(roundn(v35, 2)) + ' ' : scr_label
scr_label := s36 ? scr_label + syminfo.ticker(a36) + ' ' + str.tostring(roundn(v36, 2)) + ' ' : scr_label
scr_label := s37 ? scr_label + syminfo.ticker(a37) + ' ' + str.tostring(roundn(v37, 2)) + ' ' : scr_label
scr_label := s38 ? scr_label + syminfo.ticker(a38) + ' ' + str.tostring(roundn(v38, 2)) + ' ' : scr_label
scr_label := s39 ? scr_label + syminfo.ticker(a39) + ' ' + str.tostring(roundn(v39, 2)) + ' ' : scr_label
scr_label := s40 ? scr_label + syminfo.ticker(a40) + ' ' + str.tostring(roundn(v40, 2)) + ' ' : scr_label
var panel =table.new(position = position.top_right,columns = 10,rows=10,bgcolor = color.green,frame_color = color.black,border_color = color.red)
//lab_1 = label.new(bar_index + loc,50, scr_label, color=color.green, textcolor=color.white, style=label.style_label_center)
//label.delete(lab_1 )
if barstate.islast
table.cell(panel,0,0,text = str.tostring(scr_label))
if str.length(scr_label) > 8
alert(scr_label,alert.freq_once_per_bar_close)
//------------------------------------------------------
ActivTrades Europe Market Pulse – Ion JaureguiActivTrades Europe Market Pulse Indicator – Detailed Description
The ActivTrades Europe Market Pulse Indicator is a market analysis tool designed to assess overall risk sentiment in European financial markets. Unlike trading signals, it provides a clear view of market conditions, helping traders and analysts understand whether the market environment favors risk-taking or caution.
How it Works:
The indicator combines three key metrics to gauge European market sentiment:
1. Equity Index and Sector Performance:
o Compares the relative position of major European equity indices and sector ETFs to their 50-day moving averages.
o A performance above the moving average signals market strength, while below indicates relative weakness, reflecting investors’ appetite for risk.
2. German 10-Year Government Bond Yield:
o Monitors the level of the German 10-year bond yield relative to its 10-day moving average.
o Yields above the moving average indicate greater confidence and risk tolerance, while yields below suggest caution or risk aversion.
3. Point-Based Scoring System:
o Each instrument is assigned points depending on whether it is above or below its moving average.
o Points are combined to generate an overall Risk-On/Risk-Off score, which oscillates between -5 (Extreme Risk-Off) and +5 (Extreme Risk-On), providing a quantitative measure of European market sentiment.
Visual Output:
• The results are displayed as a colored histogram, allowing quick interpretation of market conditions.
• Labeled zones include:
o Extreme Risk-On: Indicates bullish conditions with high risk appetite.
o Extreme Risk-Off: Reflects heightened market caution or fear.
o Neutral Zone: Suggests mixed or balanced sentiment.
Purpose and Use:
• Provides investors, analysts, and traders with insight into the prevailing European market mood.
• Supports informed decision-making and risk management strategies without offering explicit buy or sell signals.
________________________________________
Disclaimer:
The information provided does not constitute investment research. It has not been prepared in accordance with legal requirements designed to promote the independence of investment research and should be considered marketing communication.
All information is prepared by ActivTrades ("AT") and does not contain a record of AT’s prices or constitute an offer or solicitation for a transaction in any financial instrument. No representation is made regarding its accuracy or completeness.
This material does not consider the specific investment objectives or financial situation of any individual. Past performance and forecasts are not reliable indicators of future results. AT provides execution-only services. Any action taken based on this information is at the recipient’s own risk. Political and central bank risks are unpredictable. Platform tools do not guarantee success.
Indicators Risk Advice: The indicator and publications do not constitute financial, investment, trading, or other advice. They are designed to provide trend guidance and filter market noise for international users and are not intended for use by users in Spain.
SAPSAN TRADE: Ultimate BOP MomentumSAPSAN TRADE: Ultimate BOP Momentum
The Ultimate BOP Momentum indicator is a powerful tool designed to identify strong market momentum using the Balance of Power (BOP) concept. It combines multiple filters and conditions to provide high-probability buy and sell signals. This indicator is ideal for traders who want to spot market turning points and trend continuation moments with confidence.
Features:
BOP Calculation: Measures the strength of buyers versus sellers on each candle.
Smoothed BOP: Provides a clearer view of momentum trends.
Volume & Range Filters: Ensures signals occur during significant market moves.
Momentum Filter: Confirms the direction over multiple bars.
Trend Filter: Aligns signals with the overall trend for higher accuracy.
Divergence Detection: Spots bullish and bearish divergences for potential reversals.
Confirmation Bars: Allows optional multi-bar confirmation for signals.
Visual Signals: Displays buy (▲) and sell (▼) signals on the chart, with color-coded backgrounds and threshold lines.
Alerts: Built-in alerts for automatic notifications when buy or sell conditions are met.
Inputs:
Timeframe: Choose the timeframe for BOP calculation.
BOP+ / BOP- Thresholds: Customize sensitivity for bullish and bearish signals.
Volume Filter: Toggle to require above-average volume for valid signals.
Range Filter: Toggle to require above-average candle range for valid signals.
Momentum Filter: Sets the number of bars to confirm directional momentum.
Confirmation Bars: Number of consecutive bars confirming the signal.
Trend Filter: Toggle to align signals with the trend.
Divergence Detection: Toggle to enable bullish/bearish divergence signals.
Usage:
Buy Signals: Occur when momentum, trend, volume, and range conditions align, or when bullish divergences are detected.
Sell Signals: Occur when momentum, trend, volume, and range conditions align, or when bearish divergences are detected.
Ideal for crypto, stocks, and forex markets.
Note:
Always combine this indicator with your own risk management and analysis. Signals are tools to assist your trading decisions, not guaranteed outcomes.
Carrera GTTheSouline x Carrera GT
IG:https://www.instagram.com/qberkshireofficial?igsh=MWViZW9nOGZmanpxeg==
ActivTrades US Market Pulse – Ion JaureguiActivTrades US Market Pulse Indicator – Detailed Description
The ActivTrades US Market Pulse Indicator is a market analysis tool designed to assess overall risk sentiment in U.S. financial markets. Rather than generating trade signals, it provides a snapshot of the prevailing market environment, helping traders and analysts understand whether conditions favor risk-taking or caution.
How it Works:
The indicator combines three key market metrics:
1. Sector Momentum:
o Compares the performance of cyclical sectors (e.g., technology, consumer discretionary, industrials) with defensive sectors (e.g., utilities, consumer staples, healthcare) relative to their 50-day moving averages.
o Stronger cyclical sector performance indicates higher market risk tolerance, while stronger defensive sector performance suggests increased risk aversion.
2. Volatility Measure – VIX Index:
o Incorporates the CBOE Volatility Index (VIX), a widely used gauge of market fear.
o Higher VIX levels indicate elevated uncertainty and a risk-off environment, whereas lower levels suggest calmer markets and greater investor confidence.
3. Interest Rate Spread:
o Monitors the yield difference between the 10-year and 2-year U.S. Treasury bonds.
o A wider spread typically reflects economic optimism and greater risk appetite, while a narrower or inverted spread signals caution.
Risk Sentiment Index:
• Each metric is assigned points based on its level, which are then combined to create an index representing overall market sentiment.
• The index oscillates between Risk-On (high risk appetite) and Risk-Off (heightened caution), with a neutral zone for balanced conditions.
Visual Output:
• The results are displayed as a colored histogram, making it easy to interpret market sentiment at a glance.
• Labeled zones include:
o Extreme Risk-On: Indicates a strong risk-taking environment.
o Extreme Risk-Off: Reflects heightened fear or uncertainty.
o Neutral Zone: Suggests a balanced or mixed market sentiment.
Purpose and Use:
• Helps traders, analysts, and investors gauge the prevailing mood of the market.
• Provides context for risk management and strategic positioning without offering explicit trade recommendations.
*******************************************************************************************
The information provided does not constitute investment research. The material has not been prepared in accordance with the legal requirements designed to promote the independence of investment research and such should be considered a marketing communication.
All information has been prepared by ActivTrades ("AT"). The information does not contain a record of AT's prices, or an offer of or solicitation for a transaction in any financial instrument. No representation or warranty is given as to the accuracy or completeness of this information.
Any material provided does not have regard to the specific investment objective and financial situation of any person who may receive it. Past performance and forecasting are not a synonym of a reliable indicator of future performance. AT provides an execution-only service. Consequently, any person acting on the information provided does so at their own risk. Political risk is unpredictable. Central bank actions can vary. Platform tools do not guarantee success.
INDICATORS RISK ADVICE: The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by ActivTrades. This script intends to help follow the trend and filter out market noise. This script is meant for the use of international users. This script is not meant for the use of Spain users.