LibraryCOTLibrary "LibraryCOT"
This library provides tools to help Pine programmers fetch Commitment of Traders (COT) data for futures.
rootToCFTCCode(root)
Accepts a futures root and returns the relevant CFTC code.
Parameters:
root : Root prefix of the future's symbol, e.g. "ZC" for "ZC1!"" or "ZCU2021".
Returns: The part of a COT ticker corresponding to `root`, or "" if no CFTC code exists for the `root`.
currencyToCFTCCode(curr)
Converts a currency string to its corresponding CFTC code.
Parameters:
curr : Currency code, e.g., "USD" for US Dollar.
Returns: The corresponding to the currency, if one exists.
optionsToTicker(includeOptions)
Returns the part of a COT ticker using the `includeOptions` value supplied, which determines whether options data is to be included.
Parameters:
includeOptions : A "bool" value: 'true' if the symbol should include options and 'false' otherwise.
Returns: The part of a COT ticker: "FO" for data that includes options and "F" for data that doesn't.
metricNameAndDirectionToTicker(metricName, metricDirection)
Returns a string corresponding to a metric name and direction, which is one component required to build a valid COT ticker ID.
Parameters:
metricName : One of the metric names listed in this library's chart. Invalid values will cause a runtime error.
metricDirection : Metric direction. Possible values are: "Long", "Short", "Spreading", and "No direction". Valid values vary with metrics. Invalid values will cause a runtime error.
Returns: The part of a COT ticker ID string, e.g., "OI_OLD" for "Open Interest" and "No direction", or "TC_L" for "Traders Commercial" and "Long".
typeToTicker(metricType)
Converts a metric type into one component required to build a valid COT ticker ID. See the "Old and Other Futures" section of the CFTC's Explanatory Notes for details on types.
Parameters:
metricType : Metric type. Accepted values are: "All", "Old", "Other".
Returns: The part of a COT ticker.
convertRootToCOTCode(mode, convertToCOT)
Depending on the `mode`, returns a CFTC code using the chart's symbol or its currency information when `convertToCOT = true`. Otherwise, returns the symbol's root or currency information. If no COT data exists, a runtime error is generated.
Parameters:
mode : A string determining how the function will work. Valid values are:
"Root": the function extracts the futures symbol root (e.g. "ES" in "ESH2020") and looks for its CFTC code.
"Base currency": the function extracts the first currency in a pair (e.g. "EUR" in "EURUSD") and looks for its CFTC code.
"Currency": the function extracts the quote currency ("JPY" for "TSE:9984" or "USDJPY") and looks for its CFTC code.
"Auto": the function tries the first three modes (Root -> Base Currency -> Currency) until a match is found.
convertToCOT : "bool" value that, when `true`, causes the function to return a CFTC code. Otherwise, the root or currency information is returned. Optional. The default is `true`.
Returns: If `convertToCOT` is `true`, the part of a COT ticker ID string. If `convertToCOT` is `false`, the root or currency extracted from the current symbol.
COTTickerid(COTType, CTFCCode, includeOptions, metricName, metricDirection, metricType)
Returns a valid TradingView ticker for the COT symbol with specified parameters.
Parameters:
COTType : A string with the type of the report requested with the ticker, one of the following: "Legacy", "Disaggregated", "Financial".
CTFCCode : The for the asset, e.g., wheat futures (root "ZW") have the code "001602".
includeOptions : A boolean value. 'true' if the symbol should include options and 'false' otherwise.
metricName : One of the metric names listed in this library's chart.
metricDirection : Direction of the metric, one of the following: "Long", "Short", "Spreading", "No direction".
metricType : Type of the metric. Possible values: "All", "Old", and "Other".
Returns: A ticker ID string usable with `request.security()` to fetch the specified Commitment of Traders data.
Pesquisar nos scripts por "文华财经tick价格"
LibraryCOT█ OVERVIEW
This library is a Pine programmer's tool that provides functions to access Commitment of Traders (COT) data for futures. Four of our scripts use it:
• Commitment of Traders: Legacy Metrics
• Commitment of Traders: Disaggregated Metrics
• Commitment of Traders: Financial Metrics
• Commitment of Traders: Total
If you do not program in Pine and want to use COT data, please see the indicators linked above.
█ CONCEPTS
Commitment of Traders (COT) data is tallied by the Commodity Futures Trading Commission (CFTC) , a US federal agency that oversees the trading of derivative markets such as futures in the US. It is weekly data that provides traders with information about open interest for an asset. The CFTC oversees derivative markets traded on different exchanges, so COT data is available for assets that can be traded on CBOT, CME, NYMEX, COMEX, and ICEUS.
Accessing COT data from a Pine script requires the generation of a ticker ID string for use with request.security() . The ticker string must be encoded in a special format that includes both CFTC and TradingView-specific content. The format of the ticker IDs is somewhat complex; this library's functions make their generation easier. Note that if you know the COT ticker ID string for specific data, you can enter it from the chart's "Symbol Search" dialog box.
A ticker for COT data in Pine has the following structure:
COT:__<_metricDirection><_metricType>
where an underscore prefixing a component name inside <> is only included if the component is not a null string, and:
Is a digit representing the type of the COT report the data comes from: "" for legacy COT data, "2" for disaggregated data and "3" for financial data.
Is a six digit code that represents a commodity. Example: wheat futures (root "ZW") have the code "001602".
Is either "F" if the report data should exclude Options data, or "FO" if such data is included.
Is the TradingView code of the metric. This library's `metricNameAndDirectionToTicker()` function creates both
the and components of a COT ticker from the metric names and directions listed in the above chart.
The different metrics are explained in the CFTC's Explanatory Notes .
Is the direction of the metric: "Long", "Short", "Spreading" or "No direction".
Not all directions are applicable to all metrics. The valid ones are listed next to each metric in the above chart.
Is the type of the metric, possible values are "All", "Old" and "Other".
The difference between the types is explained in the "Old and Other Futures" section of the CFTC's Explanatory Notes .
As an example, the Legacy report Open Interest data for ZW futures (options included) in the old standard has the ticker "COT:001602_FO_OI_OLD". The same data using the current standard without futures has the ticker "COT:001602_F_OI".
█ USING THE LIBRARY
The first functions in the library are helper functions that generate components of a COT ticker ID. The last function, `COTTickerid()`, is the one that generates the full ticker ID string by calling some of the helper functions. We use it like this in our example:
exampleTicker = COTTickerid(
COTType = "Legacy",
CFTCCode = convertRootToCOTCode("Auto"),
includeOptions = false,
metricName = "Open Interest",
metricDirection = "No direction",
metricType = "All")
This library's chart displays the valid values for the `metricName` and `metricDirection` arguments. They vary for each of the three types of COT data (the `COTType` argument). The chart also displays the COT ticker ID string in the `exampleTicker` variable.
Look first. Then leap.
The library's functions are:
rootToCFTCCode(root)
Accepts a futures root and returns the relevant CFTC code.
Parameters:
root : Root prefix of the future's symbol, e.g. "ZC" for "ZC1!"" or "ZCU2021".
Returns: The part of a COT ticker corresponding to `root`, or "" if no CFTC code exists for the `root`.
currencyToCFTCCode(curr)
Converts a currency string to its corresponding CFTC code.
Parameters:
curr : Currency code, e.g., "USD" for US Dollar.
Returns: The corresponding to the currency, if one exists.
optionsToTicker(includeOptions)
Returns the part of a COT ticker using the `includeOptions` value supplied, which determines whether options data is to be included.
Parameters:
includeOptions : A "bool" value: 'true' if the symbol should include options and 'false' otherwise.
Returns: The part of a COT ticker: "FO" for data that includes options and "F" for data that doesn't.
metricNameAndDirectionToTicker(metricName, metricDirection)
Returns a string corresponding to a metric name and direction, which is one component required to build a valid COT ticker ID.
Parameters:
metricName : One of the metric names listed in this library's chart. Invalid values will cause a runtime error.
metricDirection : Metric direction. Possible values are: "Long", "Short", "Spreading", and "No direction".
Valid values vary with metrics. Invalid values will cause a runtime error.
Returns: The part of a COT ticker ID string, e.g., "OI_OLD" for "Open Interest" and "No direction",
or "TC_L" for "Traders Commercial" and "Long".
typeToTicker(metricType)
Converts a metric type into one component required to build a valid COT ticker ID.
See the "Old and Other Futures" section of the CFTC's Explanatory Notes for details on types.
Parameters:
metricType : Metric type. Accepted values are: "All", "Old", "Other".
Returns: The part of a COT ticker.
convertRootToCOTCode(mode, convertToCOT)
Depending on the `mode`, returns a CFTC code using the chart's symbol or its currency information when `convertToCOT = true`.
Otherwise, returns the symbol's root or currency information. If no COT data exists, a runtime error is generated.
Parameters:
mode : A string determining how the function will work. Valid values are:
"Root": the function extracts the futures symbol root (e.g. "ES" in "ESH2020") and looks for its CFTC code.
"Base currency": the function extracts the first currency in a pair (e.g. "EUR" in "EURUSD") and looks for its CFTC code.
"Currency": the function extracts the quote currency ("JPY" for "TSE:9984" or "USDJPY") and looks for its CFTC code.
"Auto": the function tries the first three modes (Root -> Base Currency -> Currency) until a match is found.
convertToCOT : "bool" value that, when `true`, causes the function to return a CFTC code.
Otherwise, the root or currency information is returned. Optional. The default is `true`.
Returns: If `convertToCOT` is `true`, the part of a COT ticker ID string.
If `convertToCOT` is `false`, the root or currency extracted from the current symbol.
COTTickerid(COTType, CTFCCode, includeOptions, metricName, metricDirection, metricType)
Returns a valid TradingView ticker for the COT symbol with specified parameters.
Parameters:
COTType : A string with the type of the report requested with the ticker, one of the following: "Legacy", "Disaggregated", "Financial".
CTFCCode : The for the asset, e.g., wheat futures (root "ZW") have the code "001602".
includeOptions : A boolean value. 'true' if the symbol should include options and 'false' otherwise.
metricName : One of the metric names listed in this library's chart.
metricDirection : Direction of the metric, one of the following: "Long", "Short", "Spreading", "No direction".
metricType : Type of the metric. Possible values: "All", "Old", and "Other".
Returns: A ticker ID string usable with `request.security()` to fetch the specified Commitment of Traders data.
█ AVAILABLE METRICS
Different COT types provide different metrics. The table of all metrics available for each of the types can be found below.
+------------------------------+------------------------+
| Legacy (COT) Metric Names | Directions |
+------------------------------+------------------------+
| Open Interest | No direction |
| Noncommercial Positions | Long, Short, Spreading |
| Commercial Positions | Long, Short |
| Total Reportable Positions | Long, Short |
| Nonreportable Positions | Long, Short |
| Traders Total | No direction |
| Traders Noncommercial | Long, Short, Spreading |
| Traders Commercial | Long, Short |
| Traders Total Reportable | Long, Short |
| Concentration Gross LT 4 TDR | Long, Short |
| Concentration Gross LT 8 TDR | Long, Short |
| Concentration Net LT 4 TDR | Long, Short |
| Concentration Net LT 8 TDR | Long, Short |
+------------------------------+------------------------+
+-----------------------------------+------------------------+
| Disaggregated (COT2) Metric Names | Directions |
+-----------------------------------+------------------------+
| Open Interest | No Direction |
| Producer Merchant Positions | Long, Short |
| Swap Positions | Long, Short, Spreading |
| Managed Money Positions | Long, Short, Spreading |
| Other Reportable Positions | Long, Short, Spreading |
| Total Reportable Positions | Long, Short |
| Nonreportable Positions | Long, Short |
| Traders Total | No Direction |
| Traders Producer Merchant | Long, Short |
| Traders Swap | Long, Short, Spreading |
| Traders Managed Money | Long, Short, Spreading |
| Traders Other Reportable | Long, Short, Spreading |
| Traders Total Reportable | Long, Short |
| Concentration Gross LE 4 TDR | Long, Short |
| Concentration Gross LE 8 TDR | Long, Short |
| Concentration Net LE 4 TDR | Long, Short |
| Concentration Net LE 8 TDR | Long, Short |
+-----------------------------------+------------------------+
+-------------------------------+------------------------+
| Financial (COT3) Metric Names | Directions |
+-------------------------------+------------------------+
| Open Interest | No Direction |
| Dealer Positions | Long, Short, Spreading |
| Asset Manager Positions | Long, Short, Spreading |
| Leveraged Funds Positions | Long, Short, Spreading |
| Other Reportable Positions | Long, Short, Spreading |
| Total Reportable Positions | Long, Short |
| Nonreportable Positions | Long, Short |
| Traders Total | No Direction |
| Traders Dealer | Long, Short, Spreading |
| Traders Asset Manager | Long, Short, Spreading |
| Traders Leveraged Funds | Long, Short, Spreading |
| Traders Other Reportable | Long, Short, Spreading |
| Traders Total Reportable | Long, Short |
| Concentration Gross LE 4 TDR | Long, Short |
| Concentration Gross LE 8 TDR | Long, Short |
| Concentration Net LE 4 TDR | Long, Short |
| Concentration Net LE 8 TDR | Long, Short |
+-------------------------------+------------------------+
Delay Estimatorthis script can be used to adjust one of the free realtime tickers (such as SPX500, NAS100) to "look" like one of the delayed futures tickers (such as ES1!, NQ1!). This basically allows us to get an estimate of the realtime futures ticker price.
it uses bollinger bands to adjust the volatility and offset of the realtime ticker
it also provides a decimator to reduce the price into ticks, since futures often use 4 ticks per point
Ultra Trade JournalThe Ultra Trade Journal is a powerful TradingView indicator designed to help traders meticulously document and analyze their trades. Whether you're a novice or an experienced trader, this tool offers a clear and organized way to visualize your trading strategy, monitor performance, and make informed decisions based on detailed trade metrics.
Detailed Description
The Ultra Trade Journal indicator allows users to input and visualize critical trade information directly on their TradingView charts.
.........
User Inputs
Traders can specify entry and exit prices , stop loss levels, and up to four take profit targets.
.....
Dynamic Plotting
Once the input values are set, the indicator automatically plots horizontal lines for entry, exit, stop loss, and each take profit level on the chart. These lines are visually distinct, using different colors and styles (solid, dashed, dotted) to represent each element clearly.
.....
Live Position Tracking
If enabled, the indicator can adjust the exit price in real-time based on the current market price, allowing traders to monitor live positions effectively.
.....
Tick Calculations
The script calculates the number of ticks between the entry price and each exit point (stop loss and take profits). This helps in understanding the movement required for each target and assessing the potential risk and reward.
.....
Risk-Reward Ratios
For each take profit level, the indicator computes the risk-reward (RR) ratio by comparing the ticks at each target against the stop loss ticks. This provides a quick view of the potential profitability versus the risk taken.
.....
Comprehensive Table Display
A customizable table is displayed on the chart, summarizing all key trade details. This includes the entry and exit prices, stop loss and take profit levels, tick counts, and their respective RR ratios.
Users can adjust the table's Position and text color to suit their preferences.
.....
Visual Enhancements
The indicator uses adjustable background shading between entry and stop loss/take profit lines to visually represent potential trade outcomes. This shading adjusts based on whether the trade is long or short, providing an intuitive understanding of trade performance.
.........
Overall, the Ultra Trade Journal combines visual clarity with detailed analytics, enabling traders to keep a well-organized record of their trades and enhance their trading strategies through insightful data.
MultiLayer Acceleration/Deceleration Strategy [Skyrexio]Overview
MultiLayer Acceleration/Deceleration Strategy leverages the combination of Acceleration/Deceleration Indicator(AC), Williams Alligator, Williams Fractals and Exponential Moving Average (EMA) to obtain the high probability long setups. Moreover, strategy uses multi trades system, adding funds to long position if it considered that current trend has likely became stronger. Acceleration/Deceleration Indicator is used for creating signals, while Alligator and Fractal are used in conjunction as an approximation of short-term trend to filter them. At the same time EMA (default EMA's period = 100) is used as high probability long-term trend filter to open long trades only if it considers current price action as an uptrend. More information in "Methodology" and "Justification of Methodology" paragraphs. The strategy opens only long trades.
Unique Features
No fixed stop-loss and take profit: Instead of fixed stop-loss level strategy utilizes technical condition obtained by Fractals and Alligator to identify when current uptrend is likely to be over (more information in "Methodology" and "Justification of Methodology" paragraphs)
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Multilayer trades opening system: strategy uses only 10% of capital in every trade and open up to 5 trades at the same time if script consider current trend as strong one.
Short and long term trend trade filters: strategy uses EMA as high probability long-term trend filter and Alligator and Fractal combination as a short-term one.
Methodology
The strategy opens long trade when the following price met the conditions:
1. Price closed above EMA (by default, period = 100). Crossover is not obligatory.
2. Combination of Alligator and Williams Fractals shall consider current trend as an upward (all details in "Justification of Methodology" paragraph)
3. Acceleration/Deceleration shall create one of two types of long signals (all details in "Justification of Methodology" paragraph). Buy stop order is placed one tick above the candle's high of last created long signal.
4. If price reaches the order price, long position is opened with 10% of capital.
5. If currently we have opened position and price creates and hit the order price of another one long signal, another one long position will be added to the previous with another one 10% of capital. Strategy allows to open up to 5 long trades simultaneously.
6. If combination of Alligator and Williams Fractals shall consider current trend has been changed from up to downtrend, all long trades will be closed, no matter how many trades has been opened.
Script also has additional visuals. If second long trade has been opened simultaneously the Alligator's teeth line is plotted with the green color. Also for every trade in a row from 2 to 5 the label "Buy More" is also plotted just below the teeth line. With every next simultaneously opened trade the green color of the space between teeth and price became less transparent.
Strategy settings
In the inputs window user can setup strategy setting: EMA Length (by default = 100, period of EMA, used for long-term trend filtering EMA calculation). User can choose the optimal parameters during backtesting on certain price chart.
Justification of Methodology
Let's explore the key concepts of this strategy and understand how they work together. We'll begin with the simplest: the EMA.
The Exponential Moving Average (EMA) is a type of moving average that assigns greater weight to recent price data, making it more responsive to current market changes compared to the Simple Moving Average (SMA). This tool is widely used in technical analysis to identify trends and generate buy or sell signals. The EMA is calculated as follows:
1.Calculate the Smoothing Multiplier:
Multiplier = 2 / (n + 1), Where n is the number of periods.
2. EMA Calculation
EMA = (Current Price) × Multiplier + (Previous EMA) × (1 − Multiplier)
In this strategy, the EMA acts as a long-term trend filter. For instance, long trades are considered only when the price closes above the EMA (default: 100-period). This increases the likelihood of entering trades aligned with the prevailing trend.
Next, let’s discuss the short-term trend filter, which combines the Williams Alligator and Williams Fractals. Williams Alligator
Developed by Bill Williams, the Alligator is a technical indicator that identifies trends and potential market reversals. It consists of three smoothed moving averages:
Jaw (Blue Line): The slowest of the three, based on a 13-period smoothed moving average shifted 8 bars ahead.
Teeth (Red Line): The medium-speed line, derived from an 8-period smoothed moving average shifted 5 bars forward.
Lips (Green Line): The fastest line, calculated using a 5-period smoothed moving average shifted 3 bars forward.
When the lines diverge and align in order, the "Alligator" is "awake," signaling a strong trend. When the lines overlap or intertwine, the "Alligator" is "asleep," indicating a range-bound or sideways market. This indicator helps traders determine when to enter or avoid trades.
Fractals, another tool by Bill Williams, help identify potential reversal points on a price chart. A fractal forms over at least five consecutive bars, with the middle bar showing either:
Up Fractal: Occurs when the middle bar has a higher high than the two preceding and two following bars, suggesting a potential downward reversal.
Down Fractal: Happens when the middle bar shows a lower low than the surrounding two bars, hinting at a possible upward reversal.
Traders often use fractals alongside other indicators to confirm trends or reversals, enhancing decision-making accuracy.
How do these tools work together in this strategy? Let’s consider an example of an uptrend.
When the price breaks above an up fractal, it signals a potential bullish trend. This occurs because the up fractal represents a shift in market behavior, where a temporary high was formed due to selling pressure. If the price revisits this level and breaks through, it suggests the market sentiment has turned bullish.
The breakout must occur above the Alligator’s teeth line to confirm the trend. A breakout below the teeth is considered invalid, and the downtrend might still persist. Conversely, in a downtrend, the same logic applies with down fractals.
In this strategy if the most recent up fractal breakout occurs above the Alligator's teeth and follows the last down fractal breakout below the teeth, the algorithm identifies an uptrend. Long trades can be opened during this phase if a signal aligns. If the price breaks a down fractal below the teeth line during an uptrend, the strategy assumes the uptrend has ended and closes all open long trades.
By combining the EMA as a long-term trend filter with the Alligator and fractals as short-term filters, this approach increases the likelihood of opening profitable trades while staying aligned with market dynamics.
Now let's talk about Acceleration/Deceleration signals. AC indicator is calculated using the Awesome Oscillator, so let's first of all briefly explain what is Awesome Oscillator and how it can be calculated. The Awesome Oscillator (AO), developed by Bill Williams, is a momentum indicator designed to measure market momentum by contrasting recent price movements with a longer-term historical perspective. It helps traders detect potential trend reversals and assess the strength of ongoing trends.
The formula for AO is as follows:
AO = SMA5(Median Price) − SMA34(Median Price)
where:
Median Price = (High + Low) / 2
SMA5 = 5-period Simple Moving Average of the Median Price
SMA 34 = 34-period Simple Moving Average of the Median Price
The Acceleration/Deceleration (AC) Indicator, introduced by Bill Williams, measures the rate of change in market momentum. It highlights shifts in the driving force of price movements and helps traders spot early signs of trend changes. The AC Indicator is particularly useful for identifying whether the current momentum is accelerating or decelerating, which can indicate potential reversals or continuations. For AC calculation we shall use the AO calculated above is the following formula:
AC = AO − SMA5(AO), where SMA5(AO)is the 5-period Simple Moving Average of the Awesome Oscillator
When the AC is above the zero line and rising, it suggests accelerating upward momentum.
When the AC is below the zero line and falling, it indicates accelerating downward momentum.
When the AC is below zero line and rising it suggests the decelerating the downtrend momentum. When AC is above the zero line and falling, it suggests the decelerating the uptrend momentum.
Now we can explain which AC signal types are used in this strategy. The first type of long signal is when AC value is below zero line. In this cases we need to see three rising bars on the histogram in a row after the falling one. The second type of signals occurs above the zero line. There we need only two rising AC bars in a row after the falling one to create the signal. The signal bar is the last green bar in this sequence. The strategy places the buy stop order one tick above the candle's high, which corresponds to the signal bar on AC indicator.
After that we can have the following scenarios:
Price hit the order on the next candle in this case strategy opened long with this price.
Price doesn't hit the order price, the next candle set lower high. If current AC bar is increasing buy stop order changes by the script to the high of this new bar plus one tick. This procedure repeats until price finally hit buy order or current AC bar become decreasing. In the second case buy order cancelled and strategy wait for the next AC signal.
If long trades are initiated, the strategy continues utilizing subsequent signals until the total number of trades reaches a maximum of 5. All open trades are closed when the trend shifts to a downtrend, as determined by the combination of the Alligator and Fractals described earlier.
Why we use AC signals? If currently strategy algorithm considers the high probability of the short-term uptrend with the Alligator and Fractals combination pointed out above and the long-term trend is also suggested by the EMA filter as bullish. Rising AC bars after period of falling AC bars indicates the high probability of local pull back end and there is a high chance to open long trade in the direction of the most likely main uptrend. The numbers of rising bars are different for the different AC values (below or above zero line). This is needed because if AC below zero line the local downtrend is likely to be stronger and needs more rising bars to confirm that it has been changed than if AC is above zero.
Why strategy use only 10% per signal? Sometimes we can see the false signals which appears on sideways. Not risking that much script use only 10% per signal. If the first long trade has been open and price continue going up and our trend approximation by Alligator and Fractals is uptrend, strategy add another one 10% of capital to every next AC signal while number of active trades no more than 5. This capital allocation allows to take part in long trades when current uptrend is likely to be strong and use only 10% of capital when there is a high probability of sideways.
Backtest Results
Operating window: Date range of backtests is 2023.01.01 - 2024.11.01. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 10%
Maximum Single Position Loss: -5.15%
Maximum Single Profit: +24.57%
Net Profit: +2108.85 USDT (+21.09%)
Total Trades: 111 (36.94% win rate)
Profit Factor: 2.391
Maximum Accumulated Loss: 367.61 USDT (-2.97%)
Average Profit per Trade: 19.00 USDT (+1.78%)
Average Trade Duration: 75 hours
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 3h BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
MultiLayer Awesome Oscillator Saucer Strategy [Skyrexio]Overview
MultiLayer Awesome Oscillator Saucer Strategy leverages the combination of Awesome Oscillator (AO), Williams Alligator, Williams Fractals and Exponential Moving Average (EMA) to obtain the high probability long setups. Moreover, strategy uses multi trades system, adding funds to long position if it considered that current trend has likely became stronger. Awesome Oscillator is used for creating signals, while Alligator and Fractal are used in conjunction as an approximation of short-term trend to filter them. At the same time EMA (default EMA's period = 100) is used as high probability long-term trend filter to open long trades only if it considers current price action as an uptrend. More information in "Methodology" and "Justification of Methodology" paragraphs. The strategy opens only long trades.
Unique Features
No fixed stop-loss and take profit: Instead of fixed stop-loss level strategy utilizes technical condition obtained by Fractals and Alligator to identify when current uptrend is likely to be over (more information in "Methodology" and "Justification of Methodology" paragraphs)
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Multilayer trades opening system: strategy uses only 10% of capital in every trade and open up to 5 trades at the same time if script consider current trend as strong one.
Short and long term trend trade filters: strategy uses EMA as high probability long-term trend filter and Alligator and Fractal combination as a short-term one.
Methodology
The strategy opens long trade when the following price met the conditions:
1. Price closed above EMA (by default, period = 100). Crossover is not obligatory.
2. Combination of Alligator and Williams Fractals shall consider current trend as an upward (all details in "Justification of Methodology" paragraph)
3. Awesome Oscillator shall create the "Saucer" long signal (all details in "Justification of Methodology" paragraph). Buy stop order is placed one tick above the candle's high of last created "Saucer signal".
4. If price reaches the order price, long position is opened with 10% of capital.
5. If currently we have opened position and price creates and hit the order price of another one "Saucer" signal another one long position will be added to the previous with another one 10% of capital. Strategy allows to open up to 5 long trades simultaneously.
6. If combination of Alligator and Williams Fractals shall consider current trend has been changed from up to downtrend, all long trades will be closed, no matter how many trades has been opened.
Script also has additional visuals. If second long trade has been opened simultaneously the Alligator's teeth line is plotted with the green color. Also for every trade in a row from 2 to 5 the label "Buy More" is also plotted just below the teeth line. With every next simultaneously opened trade the green color of the space between teeth and price became less transparent.
Strategy settings
In the inputs window user can setup strategy setting: EMA Length (by default = 100, period of EMA, used for long-term trend filtering EMA calculation). User can choose the optimal parameters during backtesting on certain price chart.
Justification of Methodology
Let's go through all concepts used in this strategy to understand how they works together. Let's start from the easies one, the EMA. Let's briefly explain what is EMA. The Exponential Moving Average (EMA) is a type of moving average that gives more weight to recent prices, making it more responsive to current price changes compared to the Simple Moving Average (SMA). It is commonly used in technical analysis to identify trends and generate buy or sell signals. It can be calculated with the following steps:
1.Calculate the Smoothing Multiplier:
Multiplier = 2 / (n + 1), Where n is the number of periods.
2. EMA Calculation
EMA = (Current Price) × Multiplier + (Previous EMA) × (1 − Multiplier)
In this strategy uses EMA an initial long term trend filter. It allows to open long trades only if price close above EMA (by default 50 period). It increases the probability of taking long trades only in the direction of the trend.
Let's go to the next, short-term trend filter which consists of Alligator and Fractals. Let's briefly explain what do these indicators means. The Williams Alligator, developed by Bill Williams, is a technical indicator designed to spot trends and potential market reversals. It uses three smoothed moving averages, referred to as the jaw, teeth, and lips:
Jaw (Blue Line): The slowest of the three, based on a 13-period smoothed moving average shifted 8 bars ahead.
Teeth (Red Line): The medium-speed line, derived from an 8-period smoothed moving average shifted 5 bars forward.
Lips (Green Line): The fastest line, calculated using a 5-period smoothed moving average shifted 3 bars forward.
When these lines diverge and are properly aligned, the "alligator" is considered "awake," signaling a strong trend. Conversely, when the lines overlap or intertwine, the "alligator" is "asleep," indicating a range-bound or sideways market. This indicator assists traders in identifying when to act on or avoid trades.
The Williams Fractals, another tool introduced by Bill Williams, are used to pinpoint potential reversal points on a price chart. A fractal forms when there are at least five consecutive bars, with the middle bar displaying the highest high (for an up fractal) or the lowest low (for a down fractal), relative to the two bars on either side.
Key Points:
Up Fractal: Occurs when the middle bar has a higher high than the two preceding and two following bars, suggesting a potential downward reversal.
Down Fractal: Happens when the middle bar shows a lower low than the surrounding two bars, hinting at a possible upward reversal.
Traders often combine fractals with other indicators to confirm trends or reversals, improving the accuracy of trading decisions.
How we use their combination in this strategy? Let’s consider an uptrend example. A breakout above an up fractal can be interpreted as a bullish signal, indicating a high likelihood that an uptrend is beginning. Here's the reasoning: an up fractal represents a potential shift in market behavior. When the fractal forms, it reflects a pullback caused by traders selling, creating a temporary high. However, if the price manages to return to that fractal’s high and break through it, it suggests the market has "changed its mind" and a bullish trend is likely emerging.
The moment of the breakout marks the potential transition to an uptrend. It’s crucial to note that this breakout must occur above the Alligator's teeth line. If it happens below, the breakout isn’t valid, and the downtrend may still persist. The same logic applies inversely for down fractals in a downtrend scenario.
So, if last up fractal breakout was higher, than Alligator's teeth and it happened after last down fractal breakdown below teeth, algorithm considered current trend as an uptrend. During this uptrend long trades can be opened if signal was flashed. If during the uptrend price breaks down the down fractal below teeth line, strategy considered that uptrend is finished with the high probability and strategy closes all current long trades. This combination is used as a short term trend filter increasing the probability of opening profitable long trades in addition to EMA filter, described above.
Now let's talk about Awesome Oscillator's "Sauser" signals. Briefly explain what is the Awesome Oscillator. The Awesome Oscillator (AO), created by Bill Williams, is a momentum-based indicator that evaluates market momentum by comparing recent price activity to a broader historical context. It assists traders in identifying potential trend reversals and gauging trend strength.
AO = SMA5(Median Price) − SMA34(Median Price)
where:
Median Price = (High + Low) / 2
SMA5 = 5-period Simple Moving Average of the Median Price
SMA 34 = 34-period Simple Moving Average of the Median Price
Now we know what is AO, but what is the "Saucer" signal? This concept was introduced by Bill Williams, let's briefly explain it and how it's used by this strategy. Initially, this type of signal is a combination of the following AO bars: we need 3 bars in a row, the first one shall be higher than the second, the third bar also shall be higher, than second. All three bars shall be above the zero line of AO. The price bar, which corresponds to third "saucer's" bar is our signal bar. Strategy places buy stop order one tick above the price bar which corresponds to signal bar.
After that we can have the following scenarios.
Price hit the order on the next candle in this case strategy opened long with this price.
Price doesn't hit the order price, the next candle set lower low. If current AO bar is increasing buy stop order changes by the script to the high of this new bar plus one tick. This procedure repeats until price finally hit buy order or current AO bar become decreasing. In the second case buy order cancelled and strategy wait for the next "Saucer" signal.
If long trades has been opened strategy use all the next signals until number of trades doesn't exceed 5. All trades are closed when the trend changes to downtrend according to combination of Alligator and Fractals described above.
Why we use "Saucer" signals? If AO above the zero line there is a high probability that price now is in uptrend if we take into account our two trend filters. When we see the decreasing bars on AO and it's above zero it's likely can be considered as a pullback on the uptrend. When we see the stop of AO decreasing and the first increasing bar has been printed there is a high probability that this local pull back is finished and strategy open long trade in the likely direction of a main trend.
Why strategy use only 10% per signal? Sometimes we can see the false signals which appears on sideways. Not risking that much script use only 10% per signal. If the first long trade has been open and price continue going up and our trend approximation by Alligator and Fractals is uptrend, strategy add another one 10% of capital to every next saucer signal while number of active trades no more than 5. This capital allocation allows to take part in long trades when current uptrend is likely to be strong and use only 10% of capital when there is a high probability of sideways.
Backtest Results
Operating window: Date range of backtests is 2023.01.01 - 2024.11.25. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 10%
Maximum Single Position Loss: -5.10%
Maximum Single Profit: +22.80%
Net Profit: +2838.58 USDT (+28.39%)
Total Trades: 107 (42.99% win rate)
Profit Factor: 3.364
Maximum Accumulated Loss: 373.43 USDT (-2.98%)
Average Profit per Trade: 26.53 USDT (+2.40%)
Average Trade Duration: 78 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 3h BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
US Sentiment Index [CryptoSea]The US Sentiment Index is an advanced analytical tool designed for traders seeking to uncover patterns, correlations, and potential leading signals across key market tickers. This indicator surpasses traditional sentiment measures, providing a data-driven approach that offers deeper insights compared to conventional indices like the Fear and Greed Index.
Key Features
Multi-Ticker Analysis: Integrates data from a diverse set of market indicators, including gold, S&P 500, U.S. Dollar Index, Volatility Index, and more, to create a comprehensive view of market sentiment.
Customisable Sensitivity Settings: Allows users to adjust the moving average period to fine-tune the sensitivity of sentiment calculations, adapting the tool to various market conditions and trading strategies.
Detailed Sentiment Scaling: Utilises a 0-100 scale to quantify sentiment strength, with colour gradients that visually represent bearish, neutral, and bullish conditions, aiding in quick decision-making.
Below is an example where the sentiment index can give leading signals. We see a first sign of wekaness in the index as it drops below its moving average. Shortly after we see it dip below our median 50 level, another sign of weakeness. We see the SPX price action to take a hit following the sentiment index decrease.
Tickers Used and Their Impact on Sentiment
The impact of each ticker on sentiment can be bullish or bearish, depending on their behaviour:
Gold (USGD): Typically seen as a safe-haven asset, rising gold prices often indicate increased market fear or bearish sentiment. Conversely, falling gold prices can signal reduced fear and a shift towards bullish sentiment in riskier assets.
S&P 500 (SPX): A rising S&P 500 is usually a sign of bullish sentiment, reflecting confidence in economic growth and market stability. A decline, however, suggests bearish sentiment and a potential move towards risk aversion.
U.S. Dollar Index (DXY): A strengthening U.S. Dollar can be a sign of fear as investors seek safety in the dollar, which is bearish for risk assets. A weakening dollar, on the other hand, can signal bullish sentiment as capital flows into riskier assets.
Volatility Index (VIX): Known as the "fear gauge," a rising VIX indicates increased market fear and bearish sentiment. A falling VIX suggests a calm, bullish market environment.
Junk Bonds (JNK): Rising junk bond prices often reflect bullish sentiment as investors take on more risk for higher returns. Conversely, falling junk bond prices signal increased fear and bearish sentiment.
Long-Term Treasury Bonds (TLT): Higher prices for long-term treasuries usually indicate a flight to safety, reflecting bearish sentiment. Lower prices suggest a shift towards riskier assets, indicating bullish sentiment.
Financial Sector ETF (XLF): Strength in the financial sector is typically bullish, indicating confidence in economic conditions. Weakness in this sector can reflect bearish sentiment and concerns about financial stability.
Unemployment Rate (USUR): A rising unemployment rate is a bearish signal, indicating economic weakness. A declining unemployment rate is bullish, reflecting economic strength and job growth.
U.S. Interest Rates (USINTR, USIRYY): Higher interest rates can be bearish, as they increase borrowing costs and reduce spending. Lower rates are generally bullish, promoting economic growth and risk-taking.
How it Works
Sentiment Calculation: The US Sentiment Index combines data from multiple tickers, calculating sentiment by scaling the distance from their respective moving averages. Each asset's behaviour is interpreted within the context of market fear or greed, providing a refined sentiment reading that adjusts dynamically.
Market Strength Analysis: When the index is above 50 and also above its moving average, it indicates particularly strong or bullish market conditions, driven by greed. Conversely, when the index is below 50 and under its moving average, it signals bearish or weak market conditions, associated with fear.
Correlation and Pattern Detection: The indicator analyses correlations among the included assets to detect patterns that might signal potential market movements, giving traders a leading edge over simpler sentiment measures.
Adaptive Background Colouring: Utilises a colour gradient that dynamically adjusts based on sentiment values, highlighting extreme fear, neutral, and extreme greed levels directly on the chart.
Flexible Display Options: Offers settings to toggle the moving average plot and adjust its period, giving users the ability to tailor the indicator's sensitivity and display to their specific needs.
In this example below, we can see the Sentiment rise above the Moving Average (MA). Price action goes on to follow this, although there is an instance where it dips below the MA, it quickly rises back above again as a sign of strength.
Another way you can use this index is by simply using the MA, if its trending up, we know the macro sentiment is bullish.
Application
Data-Driven Insights: Offers traders a detailed, data-driven approach to sentiment analysis, incorporating a broad spectrum of market indicators to deliver actionable insights.
Pattern Recognition: Helps identify patterns and correlations that may lead to market reversals or continuations, providing a nuanced view that goes beyond simple sentiment gauges.
Enhanced Decision-Making: Equips traders with a robust tool to validate trading strategies and make informed decisions based on comprehensive sentiment analysis.
The US Sentiment Index by is an essential addition to the toolkit of any trader looking to navigate market complexities with precision and confidence. Its advanced features and data-driven approach offer unparalleled insights into market sentiment, setting it apart from conventional sentiment indicators.
Z-Score Probability IndicatorThis is the Z-Score Probability indicator. As many people like my original Z-Score indicator and have expressed more interest in the powers of the Z, I decided to make this indicator which shows additional powers of the Z-Score.
Z-Score is not only useful for measuring a ticker or any other variable’s distance from the mean, it is also useful to calculate general probability in a normal distribution set. Not only can it calculate probability in a dataset, but it can also calculate the variables within said dataset by using the Standard Deviation and the Mean of the dataset.
Using these 2 aspects of the Z-Score, you can, In principle, have an indicator that operates similar to Fibonacci retracement levels with the added bonus of being able to actually ascertain the realistic probability of said retracement.
Let’s take a look at an example:
This is a chart showing SPY on the daily timeframe. If we look at the current Z-Score level, we can see that SPY is pushing into the 2 to 3 Z-Score range. We can see two things from this:
1. We can see that a retracement to a Z-Score of 2 would correspond to a price of 425.26 based on the current dataset. And
2. We can see that the probability that SPY retraces to a Z-Score of 2 is around 0.9800 or 98%.
To take it one step further, we can look at the various other variables in the distribution. If we were to bet on SPY retracing back to -1 SDs, that would correspond to a price of around 397.15, with a probability of around 0.1600 or 16% (see image below):
Let’s say, we thought SPY would go to $440. Well, we can see that the probability SPY goes to 434.64 currently is pretty low. How do we know? Because the Z-Score table shows us the probability of values falling BELOW that Z-score level in the current distribution. So if we look at this example below:
We can see that 0.9998 or roughly 99% of values in the current SPY distribution will fall below 434.64. Thus, it may be unrealistic, at this point in time, to target said value.
So what is a Z-Score Table?
Well, I need to disclose/clarify that the Z-Score Table being displayed in this indicator does Z-Score probability a HUGE injustice. However, with the constraints what is realistic to fit into an indicator, I had to make it far more succinct. Let’s take a look at an actual Z-Score Table below:
Above is a look an the actual Z-Score table. How it works is you first identify you’re Z-Score and then find the corresponding value that relates to your score. The number displayed in the dataset represents the number of variables in the dataset/density distribution that fall BELOW that particular Z-score.
So, for example, if we have a Z-Score of -2.31, we can consult that table, go to the -2.3 then scroll across to the 0.01 to represent -2.31. We would see that this Z-Score corresponds to a 0.0104 probability zone (or essentially 1%) indicating that the majority of the variables in the distribution fall below that mean Z-score. In terms of tickers and stocks, that would mean it would theoretically be “overbought”.
So what does the indicator Z-Table tell us?
I have averaged out the data for the purposes of this indicator. However, you can also reference a manual Z-Table to get the exact probability for the current precise Z-Score. However, the reality is it doesn’t necessarily matter to be exact when it comes to tickers. The reason being, ticker’s are in constant flux, and by the time you identify that probability, the ticker will already be at a different level. So generalizations are okay in these circumstances, you just need to get the “gist” of where the distribution lies.
So how do I use the indicator?
Using the indicator is pretty straightforward. Once launched, you will see the current Z-Score of the ticker, the current levels based on the distribution and the summarized Z-Table.
The Z-Table will turn gray to indicate the zone the ticker is currently in. In this case, we can see that SPY currently is in the 2 SD Zone, meaning that 0.98 or 98% of the current dataset being shown falls below the price we are at:
When we launch the settings, we can see a few inputs.
Lookback Length: This determines the number of candles back we want to calculate the distribution for. It is defaulted to 75, but you can adjust it to whichever length you want.
SMA Length: The SMA is optional but defaults to on. If you want to see the smoothed trend of the Z-Score, this will do the trick. It does not need to be set to the same
length as the Z-Score lookback. Thus, if you want a more or less responsive SMA with, say, a larger dataset, then you can reduce the SMA length yourself.
Distribution Probability Fills: This simply colour codes the distribution zones / probability zones on the indicator.
Show Z-Table: This will display the summarized Z-Table.
Show SMA: As I indicated, the SMA is optional, you can toggle it on or off to see the overall Z-Score trend.
Concluding Remarks:
And that my friends is the Z-Score Probability Indicator.
I hope you all enjoy it and find it helpful. As always leave your comments, questions and suggestions below.
Safe trades to all and take care!
Limit Order + ATR Stop-Loss [TANHEF]This indicator enables interactive placement of limit or stop-limit orders with a trailing ATR stop-loss and optional profit target (with alerts). Refer to the images below for further clarification.
Why use a trailing stop-loss?
A trailing stop-loss serves as an exit strategy when price moves against you, while also allowing you to adjust the exit point further into profit when price moves favorably. The ATR (Average True Range), a reliable measure of volatility, acts as an effective risk management tool, functioning as a trailing stop-loss.
Indicator Explanation
Initial indicator placement: Select Long Limit or Long-Stop Limit order.
Change Entry Type: Switch between Long and Short within settings.
Modify entry price: Drag circle, adjust in settings, or re-add indicator to chart.
Optional Profit Target: Use Risk/Reward ratio or specify price.
Entry anticipation: Estimated ATR stop-loss and profit target as blue circles (fluctuates with volatility changes).
Entry triggered: Actual ATR stop-loss and profit target plotted.
Exit conditions: Stop-loss or profit target hit, exit entry.
Update Frequency: Continuously, Bar Open, or Bar Open on entry then continuously.
ATR Overlap: no entry occurs if the ATR overlaps with price (stop-loss 'hit' already on entry bar)
Table: Displays input settings selected.
Show Only On Ticker: Ability to hide indicator on other tickers.
Long Limit
Long Stop-Limit
Short Limit
Short Stop-Limit
Alerts
1. 'Check' alerts to use within indicator settings (entry, trailing stop hit, profit target hit, and failed entry).
2. Select 'Create Alert'
3. Set the condition to 'Limit Order + ATR Stop-Loss''
4. Select create.
Additional details can be added to the alert message using these words in between Curly (Brace) Brackets:
{{trail}} = ATR trailing stop-loss (price)
{{target}} = Price target (price)
{{type}} = Long or Short stop-loss (word)
{{traildistance}} = Trailing Distance (%)
{{targetdistance}} = Target Distance (%)
{{starttime}} = Start time of position (day:hr:min)
{{maxdrawdown}} = max loss
{{maxprofit}} = max profit
{{update}} = stoploss update frequency
{{entrysource}} = entry as 1st bar source (yes/no)
{{triggerentry}} = Wick/Close Trigger entry input
{{triggerexit}} = Wick/Close Trigger exit input
{{triggertarget}} = Wick/Close Trigger target input
{{atrlength}} = ATR length input
{{atrmultiplier}} = ATR multiplier input
{{atrtype}} = ATR type input
{{ticker}} = Ticker of chart (word)
{{exchange}} = Exchange of chart (word)
{{description}} = Description of ticker (words)
{{close}} = Bar close (price)
{{open}} = Bar open (price)
{{high}} = Bar high (price)
{{low}} = Bar low (price)
{{hl2}} = Bar HL2 (price)
{{volume}} = Bar volume (value)
{{time}} = Current time (day:hr:min)
{{interval}} = Chart timeframe
{{newline}} = New line for text
Leveraged Share Conversion IndicatorHello everyone,
Releasing my leveraged share conversion indicator.
I noticed that the option traders have all the fun and resources but the share traders don't really have many resources in terms of adjusting or profits on leveraged and inverse shares. So, I decided to change that this this indicator!
What it does:
In a nut shell, the calculator converts one share to the price of another through the use of a regression based analysis.
There are multiple pre-stored libraries available in the indicator, including IWM, SPY, BTC and QQQ.
However, if the ticker you want to convert is not in one of the pre-defined libraries, you can select "Use Alternative Ticker" and indicate the stock you wish to convert.
Using Libraries:
If the conversion you want is available in one of the libraries, simply select the conversion you would like. For example, if you want to convert SPY to SPXU, select that conversion. The indicator will then launch up the conversion results which it will display in a dashboard to the right and will also display the plotted conversion on a chart (see imagine below:
In the dashboard, the indicator will show you:
a) The conversion result: This is the most likely price based on the analysis
b) The standard error: This is the degree of error within the conversion. This is the basis of the upper and lower bands. In statistics, we can add and subtract the standard error from the likely result to get the "Upper" and "Lower" Confidence levels of assessment. This is just a fancy way of saying the range in which our predicted result will fall. So, for example, in the image above it shows you the price of SPXU is assessed to be around 16$ based on SPY's price. The standard error range is 15-17. This means that, the majority of the time, based on this SPY close price, SPXU should fall between 15-17$ with the most likely result being the 16$ range.
Why is there error?
Because leveraged shares have an inherent decay in them. The degree of decay can be captured utilizing the standard error. So at any given time, the small changes in price fluctuations caused by the fact that the share is leveraged can be assessed and displayed using standard error measurements.
c) The current correlation: This is important! Because if the stocks are not strongly correlated, it tells you there is a problem. In general, a perfect correlation is 1 or -1 (perfectly negative correlation or inverse correlation) and a bad correlation is anything under 0.5 or -0.5. So, for an INVERSE leveraged share, you would expect the correlation to read a negative value. Ideally -1. Because the inverse share is doing the opposite of the underlying (if the underlying goes up, the inverse goes down and vice versa). For a non-inverse leveraged share, the correlation should read a positive value. As the underlying goes up, so too does the leveraged.
Manual Conversion using Library:
If you are using a pre-defined library but want to convert a manual close price, simply select "Enable manual conversion" at the bottom of the settings and then type in the manual close price. If you are converting SPY to SPXU, type in the manual close price of SPY to get the result in SPXU and vice versa.
Using an Alternative Ticker:
If the ticker you want is not available in a pre-defined library (i.e. UDOW, BOIL, APPU, TSLL, etc.), simply select "Use Alternative Ticker" in the settings menu. When you select this, make sure your chart is set to the dominant chart. The "Dominant chart" is the chart of the underlying. So, if you want TSLA to TSLL, be sure you have the TSLA chart open and then set your Alternative Ticker to TSLL or TSLQ.
The process of using an Alternative Ticker remains the same. If you wish to enter a manual close price, simply select "Enable Manual Conversion".
Special Considerations:
The indicator uses 1 hour candles. Thus, please leave your dominant chart set on the 1 hour time frame to avoid confusing the indicator.
The lookback period of the manual conversion is 10, 1 hour candles. As such, the results should not be used to make longer term predictions (i.e. anything over 6 months is pushing the capabilities of a manual conversion but fair game for the pre-defined library conversions which use more longer-term data).
You can technically use the indicator to make assessments between 2 separate equities. For example, the relationship between QQQ and ARKK, SPY and DIA, IWM and SPY, etc. If there is a good enough correlation, you can use it to make predictions of the opposing ticker. For example, if DIA goes to 340, what would SPY likely do? And vice versa.
As always, I have prepared a tutorial and getting started video for your reference:
As always, let me know your questions and requests/recommendations for the indicator below. This indicator is my final reference indicator in my 3 part reference indicator release. I will be going back over the feedback to make improvements based on the suggestions I have received. So please feel free to leave any suggestions here and I will take them into consideration for improvement!
Thank you for checking this out and as always, safe trades!
GLD GC Price Converter Its primary function is to fetch the prices of the Gold ETF (ticker: GLD) and Gold Futures (ticker: GC1!) and then project significant price levels from one or both of these assets onto the chart of whatever instrument you are currently viewing.
Core Functionality & Features
Dual Asset Tracking: The script simultaneously tracks the prices of GLD and Gold Futures (GC).
Dynamic Price Level Projection: The script's main feature is its ability to calculate and draw horizontal price levels. It determines a "base price" (e.g., the nearest $100 level for GC) and then draws lines at specified increments above and below it. The key is that these levels are projected onto the current chart's price scale.
On-Chart Information Display:
Price Table: A customizable table can be displayed in any corner of the chart, showing the current prices of GLD and GC. It can also show the daily percentage change for GC, colored green for positive changes and red for negative ones.
Last Price Label: It can show a label next to the most recent price bar that displays the current prices of both GLD and GC.
Extensive Customization: The user has significant control over the indicator's appearance and behavior through the settings panel.
This includes:
Toggling the display for GLD and GC levels independently.
Adjusting the multiplier for the price levels (e.g., show levels every $100 or $50 for GC).
Changing the colors, line styles (solid, dashed, dotted), and horizontal offset for the labels.
Defining the number of price levels to display.
Controlling the text size for labels and the table.
Choosing whether the script updates on every tick or only once per candle close for better performance.
AsturRiskPanelIndicator Summary
ATR Engine
Length & Smoothing: Choose how many bars to use (default 14) and the smoothing method (RMA/SMA/EMA/WMA).
Median ATR: Computes a rolling median of ATR over a user-defined look-back (default 14) to derive a “scalp” target.
Scalp Target
Automatically set at ½ × median ATR, snapped to the nearest tick.
Optional rounding to whole points for simplicity.
Stop Calculation
ATR Multiplier: Scales current ATR by a user input (default 1.5) to produce your stop distance in points (and ticks when appropriate).
Distortion Handling: Switches between point-only and point + tick displays based on contract specifications.
Risk & Sizing
Risk % of account per trade (default 2 %).
Calculates dollar risk per contract and optimal contract count.
Displays all metrics (scalp, stop, risk/contract, max contracts, max risk, account size) in a customizable on-chart table.
ATR-Based Stop Placement Guidelines
Trade Context ATR Multiplier Notes
Tight Range Entry 1.0 × ATR High-conviction, precise entries. Expect more shake-outs.
Standard Trend Entry 1.5 × ATR Balanced for H2/L2, MTR, DT/DB entries.
Breakouts/Microchannels 2.0 × ATR Wide stops through chop—Brooks-style breathing room.
How to Use
Select ATR Settings
Pick an ATR length (e.g. 14) and smoothing (RMA for stability).
Adjust the median length if you want a faster/slower scalp line.
Align Multiplier with Your Setup
For tight-range entries, set ATR Multiplier ≈ 1.0.
For standard trend trades, leave at 1.5.
For breakout/pullback setups, increase to 2.0 or more.
Customize Risk Parameters
Enter your account size and desired risk % per trade (e.g. 2 %).
The table auto-calculates how many contracts you can take.
Read the On-Chart Table
Scalp shows your intraday target.
Stop gives Brooks-style stop distance in points (and ticks).
Risk/Contract is the dollar risk per contract.
Max Contracts tells you maximum position size.
Max Risk confirms total dollar exposure.
Visual Confirmation
Place your entry, then eyeball the scalp and stop levels against chart structure (e.g. swing highs/lows).
Adjust the ATR multiplier if market context shifts (e.g. volatility spikes).
By blending this sizing panel with contextual ATR multipliers, you’ll consistently give your trades the right amount of “breathing room” while keeping risk in check.
Entropy Chart Analysis [PhenLabs]📊 Entropy Chart analysis -
Version: PineScript™ v6
📌 Description
The Entropy Chart indicator analysis applies Approximate Entropy (ApEn) to identify zones of potential support and resistance on your price chart. It is designed to locate changes in the market’s predictability, with a focus on zones near significant psychological price levels (e.g., multiples of 50). By quantifying entropy, the indicator aims to identify zones where price action might stabilize (potential support) or become randomized (potential resistance).
This tool automates the visualization of these key areas for traders, which may have the effect of revealing reversal levels or consolidation zones that would be hard to discern through traditional means. It also filters the signals by proximity to key levels in an attempt to reduce noise and highlight higher-probability setups. These dynamic zones adapt to changing market conditions by stretching, merging, and expiring based on user-inputted rules.
🚀 Points of Innovation
Combines Approximate Entropy (ApEn) calculation with price action near significant levels.
Filters zone signals based on proximity (in ticks) to predefined significant price levels (multiples of 50).
Dynamically merges overlapping or nearby zones to consolidate signals and reduce chart clutter.
Uses ApEn crossovers relative to its moving average as the core trigger mechanism.
Provides distinct visual coloring for bullish, bearish, and merged (mixed-signal) zones.
Offers comprehensive customization for entropy calculation, zone sensitivity, level filtering, and visual appearance.
🔧 Core Components
Approximate Entropy (ApEn) Calculation : Measures the regularity or randomness of price fluctuations over a specified window. Low ApEn suggests predictability, while high ApEn suggests randomness.
Zone Trigger Logic : Creates potential support zones when ApEn crosses below its average (indicating increasing predictability) and potential resistance zones when it crosses above (indicating increasing randomness).
Significant Level Filter : Validates zone triggers only if they occur within a user-defined tick distance from significant price levels (multiples of 50).
Dynamic Zone Management : Automatically creates, extends, merges nearby zones based on tick distance, and removes the oldest zones to maintain a maximum limit.
Zone Visualization : Draws and updates colored boxes on the chart to represent active support, resistance, or mixed zones.
🔥 Key Features
Entropy-Based S/R Detection : Uses ApEn to identify potential support (low entropy) and resistance (high entropy) areas.
Significant Level Filtering : Enhances signal quality by focusing on entropy changes near key psychological price points.
Automatic Zone Drawing & Merging : Visualizes zones dynamically, merging close signals for clearer interpretation.
Highly Customizable : Allows traders to adjust parameters for ApEn calculation, zone detection thresholds, level filter sensitivity, merging distance, and visual styles.
Integrated Alerts : Provides built-in alert conditions for the formation of new bullish or bearish zones near significant levels.
Clear Visual Output : Uses distinct, customizable colors for buy (support), sell (resistance), and mixed (merged) zones.
🎨 Visualization
Buy Zones : Represented by greenish boxes (default: #26a69a), indicating potential support areas formed during low entropy periods near significant levels.
Sell Zones : Represented by reddish boxes (default: #ef5350), indicating potential resistance areas formed during high entropy periods near significant levels.
Mixed Zones : Represented by bluish/purple boxes (default: #8894ff), formed when a buy zone and a sell zone merge, indicating areas of potential consolidation or conflict.
Dynamic Extension : Active zones are automatically extended to the right with each new bar.
📖 Usage Guidelines
Calculation Parameters
Window Length
Default: 15
Range: 10-100
Description: Lookback period for ApEn calculation. Shorter lengths are more responsive; longer lengths are smoother.
Embedding Dimension (m)
Default: 2
Range: 1-6
Description: Length of patterns compared in ApEn calculation. Higher values detect more complex patterns but require more data.
Tolerance (r)
Default: 0.5
Range: 0.1-1.0 (step 0.1)
Description: Sensitivity factor for pattern matching (as a multiple of standard deviation). Lower values require closer matches (more sensitive).
Zone Settings
Zone Lookback
Default: 5
Range: 5-50
Description: Lookback period for the moving average of ApEn used in threshold calculations.
Zone Threshold
Default: 0.5
Range: 0.5-3.0
Description: Multiplier for the ApEn average to set crossover trigger levels. Higher values require larger ApEn deviations to create zones.
Maximum Zones
Default: 5
Range: 1-10
Description: Maximum number of active zones displayed. The oldest zones are removed first when the limit is reached.
Zone Merge Distance (Ticks)
Default: 5
Range: 1-50
Description: Maximum distance in ticks for two separate zones to be merged into one.
Level Filter Settings
Tick Size
Default: 0.25
Description: The minimum price increment for the asset. Must be set correctly for the specific instrument to ensure accurate level filtering.
Max Ticks Distance from Levels
Default: 40
Description: Maximum allowed distance (in ticks) from a significant level (multiple of 50) for a zone trigger to be valid.
Visual Settings
Buy Zone Color : Default: color.new(#26a69a, 83). Sets the fill color for support zones.
Sell Zone Color : Default: color.new(#ef5350, 83). Sets the fill color for resistance zones.
Mixed Zone Color : Default: color.new(#8894ff, 83). Sets the fill color for merged zones.
Buy Border Color : Default: #26a69a. Sets the border color for support zones.
Sell Border Color : Default: #ef5350. Sets the border color for resistance zones.
Mixed Border Color : Default: color.new(#a288ff, 50). Sets the border color for mixed zones.
Border Width : Default: 1, Range: 1-3. Sets the thickness of zone borders.
✅ Best Use Cases
Identifying potential support/resistance near significant psychological price levels (e.g., $50, $100 increments).
Detecting potential market turning points or consolidation zones based on shifts in price predictability.
Filtering entries or exits by confirming signals occurring near significant levels identified by the indicator.
Adding context to other technical analysis approaches by highlighting entropy-derived zones.
⚠️ Limitations
Parameter Dependency : Indicator performance is sensitive to parameter settings ( Window Length , Tolerance , Zone Threshold , Max Ticks Distance ), which may need optimization for different assets and timeframes.
Volatility Sensitivity : High market volatility or erratic price action can affect ApEn calculations and potentially lead to less reliable zone signals.
Fixed Level Filter : The significant level filter is based on multiples of 50. While common, this may not capture all relevant levels for every asset or market condition. Accurate Tick Size input is essential.
Not Standalone : Should be used in conjunction with other analysis methods (price action, volume, other indicators) for confirmation, not as a sole basis for trading decisions.
💡 What Makes This Unique
Entropy + Level Context : Uniquely combines ApEn analysis with a specific filter for proximity to significant price levels (multiples of 50), adding locational context to entropy signals.
Intelligent Zone Merging : Automatically consolidates nearby buy/sell zones based on tick distance, simplifying visual analysis and highlighting stronger confluence areas.
Targeted Signal Generation : Focuses alerts and zone creation on specific market conditions (entropy shifts near key levels).
🔬 How It Works
Calculate Entropy : The script computes the Approximate Entropy (ApEn) of the closing prices over the defined Window Length to quantify price predictability.
Check Triggers : It monitors ApEn relative to its moving average. A crossunder below a calculated threshold (avg_apen / zone_threshold) indicates potential support; a crossover above (avg_apen * zone_threshold) indicates potential resistance.
Filter by Level : A potential zone trigger is confirmed only if the low (for support) or high (for resistance) of the trigger bar is within the Max Ticks Distance of a significant price level (multiple of 50).
Manage & Draw Zones : If a trigger is confirmed, a new zone box is created. The script checks for overlaps with existing zones within the Zone Merge Distance and merges them if necessary. Zones are extended forward, and the oldest are removed to respect the Maximum Zones limit. Active zones are drawn and updated on the chart.
💡 Note:
Crucially, set the Tick Size parameter correctly for your specific trading instrument in the “Level Filter Settings”. Incorrect Tick Size will make the significant level filter inaccurate.
Experiment with parameters, especially Window Length , Tolerance (r) , Zone Threshold , and Max Ticks Distance , to tailor the indicator’s sensitivity to your preferred asset and timeframe.
Always use this indicator as part of a comprehensive trading plan, incorporating risk management and seeking confirmation from other analysis techniques.
Dskyz (DAFE) Adaptive Regime - Quant Machine ProDskyz (DAFE) Adaptive Regime - Quant Machine Pro:
Buckle up for the Dskyz (DAFE) Adaptive Regime - Quant Machine Pro, is a strategy that’s your ultimate edge for conquering futures markets like ES, MES, NQ, and MNQ. This isn’t just another script—it’s a quant-grade powerhouse, crafted with precision to adapt to market regimes, deliver multi-factor signals, and protect your capital with futures-tuned risk management. With its shimmering DAFE visuals, dual dashboards, and glowing watermark, it turns your charts into a cyberpunk command center, making trading as thrilling as it is profitable.
Unlike generic scripts clogging up the space, the Adaptive Regime is a DAFE original, built from the ground up to tackle the chaos of futures trading. It identifies market regimes (Trending, Range, Volatile, Quiet) using ADX, Bollinger Bands, and HTF indicators, then fires trades based on a weighted scoring system that blends candlestick patterns, RSI, MACD, and more. Add in dynamic stops, trailing exits, and a 5% drawdown circuit breaker, and you’ve got a system that’s as safe as it is aggressive. Whether you’re a newbie or a prop desk pro, this strat’s your ticket to outsmarting the markets. Let’s break down every detail and see why it’s a must-have.
Why Traders Need This Strategy
Futures markets are a gauntlet—fast moves, volatility spikes (like the April 28, 2025 NQ 1k-point drop), and institutional traps that punish the unprepared. Meanwhile, platforms are flooded with low-effort scripts that recycle old ideas with zero innovation. The Adaptive Regime stands tall, offering:
Adaptive Intelligence: Detects market regimes (Trending, Range, Volatile, Quiet) to optimize signals, unlike one-size-fits-all scripts.
Multi-Factor Precision: Combines candlestick patterns, MA trends, RSI, MACD, volume, and HTF confirmation for high-probability trades.
Futures-Optimized Risk: Calculates position sizes based on $ risk (default: $300), with ATR or fixed stops/TPs tailored for ES/MES.
Bulletproof Safety: 5% daily drawdown circuit breaker and trailing stops keep your account intact, even in chaos.
DAFE Visual Mastery: Pulsing Bollinger Band fills, dynamic SL/TP lines, and dual dashboards (metrics + position) make signals crystal-clear and charts a work of art.
Original Craftsmanship: A DAFE creation, built with community passion, not a rehashed clone of generic code.
Traders need this because it’s a complete, adaptive system that blends quant smarts, user-friendly design, and DAFE flair. It’s your edge to trade with confidence, cut through market noise, and leave the copycats in the dust.
Strategy Components
1. Market Regime Detection
The strategy’s brain is its ability to classify market conditions into five regimes, ensuring signals match the environment.
How It Works:
Trending (Regime 1): ADX > 20, fast/slow EMA spread > 0.3x ATR, HTF RSI > 50 or MACD bullish (htf_trend_bull/bear).
Range (Regime 2): ADX < 25, price range < 3% of close, no HTF trend.
Volatile (Regime 3): BB width > 1.5x avg, ATR > 1.2x avg, HTF RSI overbought/oversold.
Quiet (Regime 4): BB width < 0.8x avg, ATR < 0.9x avg.
Other (Regime 5): Default for unclear conditions.
Indicators: ADX (14), BB width (20), ATR (14, 50-bar SMA), HTF RSI (14, daily default), HTF MACD (12,26,9).
Why It’s Brilliant:
Regime detection adapts signals to market context, boosting win rates in trending or volatile conditions.
HTF RSI/MACD add a big-picture filter, rare in basic scripts.
Visualized via gradient background (green for Trending, orange for Range, red for Volatile, gray for Quiet, navy for Other).
2. Multi-Factor Signal Scoring
Entries are driven by a weighted scoring system that combines candlestick patterns, trend, momentum, and volume for robust signals.
Candlestick Patterns:
Bullish: Engulfing (0.5), hammer (0.4 in Range, 0.2 else), morning star (0.2), piercing (0.2), double bottom (0.3 in Volatile, 0.15 else). Must be near support (low ≤ 1.01x 20-bar low) with volume spike (>1.5x 20-bar avg).
Bearish: Engulfing (0.5), shooting star (0.4 in Range, 0.2 else), evening star (0.2), dark cloud (0.2), double top (0.3 in Volatile, 0.15 else). Must be near resistance (high ≥ 0.99x 20-bar high) with volume spike.
Logic: Patterns are weighted higher in specific regimes (e.g., hammer in Range, double bottom in Volatile).
Additional Factors:
Trend: Fast EMA (20) > slow EMA (50) + 0.5x ATR (trend_bull, +0.2); opposite for trend_bear.
RSI: RSI (14) < 30 (rsi_bull, +0.15); > 70 (rsi_bear, +0.15).
MACD: MACD line > signal (12,26,9, macd_bull, +0.15); opposite for macd_bear.
Volume: ATR > 1.2x 50-bar avg (vol_expansion, +0.1).
HTF Confirmation: HTF RSI < 70 and MACD bullish (htf_bull_confirm, +0.2); RSI > 30 and MACD bearish (htf_bear_confirm, +0.2).
Scoring:
bull_score = sum of bullish factors; bear_score = sum of bearish. Entry requires score ≥ 1.0.
Example: Bullish engulfing (0.5) + trend_bull (0.2) + rsi_bull (0.15) + htf_bull_confirm (0.2) = 1.05, triggers long.
Why It’s Brilliant:
Multi-factor scoring ensures signals are confirmed by multiple market dynamics, reducing false positives.
Regime-specific weights make patterns more relevant (e.g., hammers shine in Range markets).
HTF confirmation aligns with the big picture, a quant edge over simplistic scripts.
3. Futures-Tuned Risk Management
The risk system is built for futures, calculating position sizes based on $ risk and offering flexible stops/TPs.
Position Sizing:
Logic: Risk per trade (default: $300) ÷ (stop distance in points * point value) = contracts, capped at max_contracts (default: 5). Point value = tick value (e.g., $12.5 for ES) * ticks per point (4) * contract multiplier (1 for ES, 0.1 for MES).
Example: $300 risk, 8-point stop, ES ($50/point) → 0.75 contracts, rounded to 1.
Impact: Precise sizing prevents over-leverage, critical for micro contracts like MES.
Stops and Take-Profits:
Fixed: Default stop = 8 points, TP = 16 points (2:1 reward/risk).
ATR-Based: Stop = 1.5x ATR (default), TP = 3x ATR, enabled via use_atr_for_stops.
Logic: Stops set at swing low/high ± stop distance; TPs at 2x stop distance from entry.
Impact: ATR stops adapt to volatility, while fixed stops suit stable markets.
Trailing Stops:
Logic: Activates at 50% of TP distance. Trails at close ± 1.5x ATR (atr_multiplier). Longs: max(trail_stop_long, close - ATR * 1.5); shorts: min(trail_stop_short, close + ATR * 1.5).
Impact: Locks in profits during trends, a game-changer in volatile sessions.
Circuit Breaker:
Logic: Pauses trading if daily drawdown > 5% (daily_drawdown = (max_equity - equity) / max_equity).
Impact: Protects capital during black swan events (e.g., April 27, 2025 ES slippage).
Why It’s Brilliant:
Futures-specific inputs (tick value, multiplier) make it plug-and-play for ES/MES.
Trailing stops and circuit breaker add pro-level safety, rare in off-the-shelf scripts.
Flexible stops (ATR or fixed) suit different trading styles.
4. Trade Entry and Exit Logic
Entries and exits are precise, driven by bull_score/bear_score and protected by drawdown checks.
Entry Conditions:
Long: bull_score ≥ 1.0, no position (position_size <= 0), drawdown < 5% (not pause_trading). Calculates contracts, sets stop at swing low - stop points, TP at 2x stop distance.
Short: bear_score ≥ 1.0, position_size >= 0, drawdown < 5%. Stop at swing high + stop points, TP at 2x stop distance.
Logic: Tracks entry_regime for PNL arrays. Closes opposite positions before entering.
Exit Conditions:
Stop-Loss/Take-Profit: Hits stop or TP (strategy.exit).
Trailing Stop: Activates at 50% TP, trails by ATR * 1.5.
Emergency Exit: Closes if price breaches stop (close < long_stop_price or close > short_stop_price).
Reset: Clears stop/TP prices when flat (position_size = 0).
Why It’s Brilliant:
Score-based entries ensure multi-factor confirmation, filtering out weak signals.
Trailing stops maximize profits in trends, unlike static exits in basic scripts.
Emergency exits add an extra safety layer, critical for futures volatility.
5. DAFE Visuals
The visuals are pure DAFE magic, blending function with cyberpunk flair to make signals intuitive and charts stunning.
Shimmering Bollinger Band Fill:
Display: BB basis (20, white), upper/lower (green/red, 45% transparent). Fill pulses (30–50 alpha) by regime, with glow (60–95 alpha) near bands (close ≥ 0.995x upper or ≤ 1.005x lower).
Purpose: Highlights volatility and key levels with a futuristic glow.
Visuals make complex regimes and signals instantly clear, even for newbies.
Pulsing effects and regime-specific colors add a DAFE signature, setting it apart from generic scripts.
BB glow emphasizes tradeable levels, enhancing decision-making.
Chart Background (Regime Heatmap):
Green — Trending Market: Strong, sustained price movement in one direction. The market is in a trend phase—momentum follows through.
Orange — Range-Bound: Market is consolidating or moving sideways, with no clear up/down trend. Great for mean reversion setups.
Red — Volatile Regime: High volatility, heightened risk, and larger/faster price swings—trade with caution.
Gray — Quiet/Low Volatility: Market is calm and inactive, with small moves—often poor conditions for most strategies.
Navy — Other/Neutral: Regime is uncertain or mixed; signals may be less reliable.
Bollinger Bands Glow (Dynamic Fill):
Neon Red Glow — Warning!: Price is near or breaking above the upper band; momentum is overstretched, watch for overbought conditions or reversals.
Bright Green Glow — Opportunity!: Price is near or breaking below the lower band; market could be oversold, prime for bounce or reversal.
Trend Green Fill — Trending Regime: Fills between bands with green when the market is trending, showing clear momentum.
Gold/Yellow Fill — Range Regime: Fills with gold/aqua in range conditions, showing the market is sideways/oscillating.
Magenta/Red Fill — Volatility Spike: Fills with vivid magenta/red during highly volatile regimes.
Blue Fill — Neutral/Quiet: A soft blue glow for other or uncertain market states.
Moving Averages:
Display: Blue fast EMA (20), red slow EMA (50), 2px.
Purpose: Shows trend direction, with trend_dir requiring ATR-scaled spread.
Dynamic SL/TP Lines:
Display: Pulsing colors (red SL, green TP for Trending; yellow/orange for Range, etc.), 3px, with pulse_alpha for shimmer.
Purpose: Tracks stops/TPs in real-time, color-coded by regime.
6. Dual Dashboards
Two dashboards deliver real-time insights, making the strat a quant command center.
Bottom-Left Metrics Dashboard (2x13):
Metrics: Mode (Active/Paused), trend (Bullish/Bearish/Neutral), ATR, ATR avg, volume spike (YES/NO), RSI (value + Oversold/Overbought/Neutral), HTF RSI, HTF trend, last signal (Buy/Sell/None), regime, bull score.
Display: Black (29% transparent), purple title, color-coded (green for bullish, red for bearish).
Purpose: Consolidates market context and signal strength.
Top-Right Position Dashboard (2x7):
Metrics: Regime, position side (Long/Short/None), position PNL ($), SL, TP, daily PNL ($).
Display: Black (29% transparent), purple title, color-coded (lime for Long, red for Short).
Purpose: Tracks live trades and profitability.
Why It’s Brilliant:
Dual dashboards cover market context and trade status, a rare feature.
Color-coding and concise metrics guide beginners (e.g., green “Buy” = go).
Real-time PNL and SL/TP visibility empower disciplined trading.
7. Performance Tracking
Logic: Arrays (regime_pnl_long/short, regime_win/loss_long/short) track PNL and win/loss by regime (1–5). Updated on trade close (barstate.isconfirmed).
Purpose: Prepares for future adaptive thresholds (e.g., adjust bull_score min based on regime performance).
Why It’s Brilliant: Lays the groundwork for self-optimizing logic, a quant edge over static scripts.
Key Features
Regime-Adaptive: Optimizes signals for Trending, Range, Volatile, Quiet markets.
Futures-Optimized: Precise sizing for ES/MES with tick-based risk inputs.
Multi-Factor Signals: Candlestick patterns, RSI, MACD, and HTF confirmation for robust entries.
Dynamic Exits: ATR/fixed stops, 2:1 TPs, and trailing stops maximize profits.
Safe and Smart: 5% drawdown breaker and emergency exits protect capital.
DAFE Visuals: Shimmering BB fill, pulsing SL/TP, and dual dashboards.
Backtest-Ready: Fixed qty and tick calc for accurate historical testing.
How to Use
Add to Chart: Load on a 5min ES/MES chart in TradingView.
Configure Inputs: Set instrument (ES/MES), tick value ($12.5/$1.25), multiplier (1/0.1), risk ($300 default). Enable ATR stops for volatility.
Monitor Dashboards: Bottom-left for regime/signals, top-right for position/PNL.
Backtest: Run in strategy tester to compare regimes.
Live Trade: Connect to Tradovate or similar. Watch for slippage (e.g., April 27, 2025 ES issues).
Replay Test: Try April 28, 2025 NQ drop to see regime shifts and stops.
Disclaimer
Trading futures involves significant risk of loss and is not suitable for all investors. Past performance does not guarantee future results. Backtest results may differ from live trading due to slippage, fees, or market conditions. Use this strategy at your own risk, and consult a financial advisor before trading. Dskyz (DAFE) Trading Systems is not responsible for any losses incurred.
Backtesting:
Frame: 2023-09-20 - 2025-04-29
Slippage: 3
Fee Typical Range (per side, per contract)
CME Exchange $1.14 – $1.20
Clearing $0.10 – $0.30
NFA Regulatory $0.02
Firm/Broker Commis. $0.25 – $0.80 (retail prop)
TOTAL $1.60 – $2.30 per side
Round Turn: (enter+exit) = $3.20 – $4.60 per contract
Final Notes
The Dskyz (DAFE) Adaptive Regime - Quant Machine Pro is more than a strategy—it’s a revolution. Crafted with DAFE’s signature precision, it rises above generic scripts with adaptive regimes, quant-grade signals, and visuals that make trading a thrill. Whether you’re scalping MES or swinging ES, this system empowers you to navigate markets with confidence and style. Join the DAFE crew, light up your charts, and let’s dominate the futures game!
(This publishing will most likely be taken down do to some miscellaneous rule about properly displaying charting symbols, or whatever. Once I've identified what part of the publishing they want to pick on, I'll adjust and repost.)
Use it with discipline. Use it with clarity. Trade smarter.
**I will continue to release incredible strategies and indicators until I turn this into a brand or until someone offers me a contract.
Created by Dskyz, powered by DAFE Trading Systems. Trade smart, trade bold.
position_toolLibrary "position_tool"
Trying to turn TradingView's position tool into a library from which you can draw position tools for your strategies on the chart. Not sure if this is going to work
calcBaseUnit()
Calculates the chart symbol's base unit of change in asset prices.
Returns: (float) A ticks or pips value of base units of change.
calcOrderPipsOrTicks(orderSize, unit)
Converts the `orderSize` to ticks.
Parameters:
orderSize (float) : (series float) The order size to convert to ticks.
unit (simple float) : (simple float) The basic units of change in asset prices.
Returns: (int) A tick value based on a given order size.
calcProfitLossSize(price, entryPrice, isLongPosition)
Calculates a difference between a `price` and the `entryPrice` in absolute terms.
Parameters:
price (float) : (series float) The price to calculate the difference from.
entryPrice (float) : (series float) The price of entry for the position.
isLongPosition (bool)
Returns: (float) The absolute price displacement of a price from an entry price.
calcRiskRewardRatio(profitSize, lossSize)
Calculates a risk to reward ratio given the size of profit and loss.
Parameters:
profitSize (float) : (series float) The size of the profit in absolute terms.
lossSize (float) : (series float) The size of the loss in absolute terms.
Returns: (float) The ratio between the `profitSize` to the `lossSize`
createPosition(entryPrice, entryTime, tpPrice, slPrice, entryColor, tpColor, slColor, textColor, showExtendRight)
Main function to create a position visualization with entry, TP, and SL
Parameters:
entryPrice (float) : (float) The entry price of the position
entryTime (int) : (int) The entry time of the position in bar_time format
tpPrice (float) : (float) The take profit price
slPrice (float) : (float) The stop loss price
entryColor (color) : (color) Color for entry line
tpColor (color) : (color) Color for take profit zone
slColor (color) : (color) Color for stop loss zone
textColor (color) : (color) Color for text labels
showExtendRight (bool) : (bool) Whether to extend lines to the right
Returns: (bool) Returns true when position is closed
GRID EXTENSIONGRID EXTENSION
Overview
The GRID EXTENSION is a simple grid-based indicator for TradingView, built with Pine Script v6. It plots horizontal price levels starting from a user-defined anchor price, with spacing set by a tick increment. Use it to identify key support, resistance, or price zones on charts for Crypto, Forex, or Futures.
Key Features
Custom Grid Levels: Plot up to 22 levels (e.g., 0, 0.25, 1.25, -2.50) with options to show/hide, set values, and choose colors.
Market-Specific Tick Increments: Select your asset type (Crypto, Forex, Futures) and choose from a range of tick increments tailored for each market:
Crypto: 1 to 5000 ticks (e.g., 100 ticks = $0.001 on ADA/USD, 5000 ticks = $50 on BTC/USD).
Forex: 5 to 5000 ticks (e.g., 100 ticks = 1 pip on EUR/USD, 5000 ticks = 50 pips).
Futures: 1 to 2500 ticks (e.g., 25 ticks = 6.25 points on E-mini S&P 500, $312.50 per contract).
Visual Options:
Extend lines to the right.
Show price and level labels (as values or percentages).
Place labels on the left or right.
Adjust background transparency for filled areas between levels.
How to Use
Set Asset Type: Choose "Crypto," "Forex," or "Futures" to match your chart.
Set Anchor Price: Enter a starting price for the grid.
Pick Tick Increment: Select a tick increment from the dropdown, following the guidance for your asset type (see Key Features).
Customize Levels: Turn levels on/off, set values, and pick colors.
Add to Chart: Apply the indicator to see the grid on your chart.
Tips
Use levels to mark support/resistance zones for entries or exits.
Extend lines to project future price zones.
Choose smaller increments (e.g., 5 ticks) for scalping, or larger ones (e.g., 1000 ticks) for swing trading.
Combine with indicators like moving averages for better signals.
Settings
Asset Type: Select "Crypto," "Forex," or "Futures" (default: "Crypto").
Anchor Price: Starting price for the grid (default: 0.0).
Tick Increment: Space between levels (options: 1, 5, 10, 25, 50, 100, 250, 500, 1000, 2500, 5000). Choose based on asset type.
Extend Right: Extend lines to the right (default: true).
Show Prices: Show price labels (default: true).
Show Levels: Show level values or percentages (default: true).
Format: Display levels as "Values" or "Percent" (default: "Values").
Labels Position: Place labels on "Left" or "Right" (default: "Left").
Background Transparency: Set transparency for filled areas (default: 100, range 0-100).
Level Options: Enable/disable levels, set values, and choose colors.
Notes
Set the anchor price to a key level (like a recent high or low) for best results.
Check the tick increment tooltip to ensure the spacing suits your market type.
Works on any chart, best for clear price trends or ranges.
Acknowledgments
Made with Pine Script v6 for TradingView. This is v1.0—feedback welcome for future updates!
TickerLibLibrary "TickerLib"
Ticker Library
exists(tickerId)
Test if a tickerId exists
Parameters:
tickerId (string)
Returns: (bool)
notExist(tickerId)
Test if a tickerId do not exists
Parameters:
tickerId (string)
Returns: (bool)
getExchange(tickerId)
Pass a tickerId return the exchange
Parameters:
tickerId (string)
Returns: (string) exchange
isPerp(tickerId)
Test if tickerId is a perps pair
Parameters:
tickerId (string)
Returns: (bool)
isNotPerp(tickerId)
Test if tickerId is not a perps pair
Parameters:
tickerId (string)
Returns: (bool)
getPair(tickerId)
Pass a tickerId return the pair without exchange
Parameters:
tickerId (string)
Returns: (string) the pair
getSpotPair(tickerId)
Pass a tickerId return the pair without exchange and perps
Parameters:
tickerId (string)
Returns: (string) the pair
Employee Portfolio Generator [By MUQWISHI]▋ INTRODUCTION :
The “Employee Portfolio Generator” simplifies the process of building a long-term investment portfolio tailored for employees seeking to build wealth through investments rather than traditional bank savings. The tool empowers employees to set up recurring deposits at customizable intervals, enabling to make additional purchases in a list of preferred holdings, with the ability to define the purchasing investment weight for each security. The tool serves as a comprehensive solution for tracking portfolio performance, conducting research, and analyzing specific aspects of portfolio investments. The output includes an index value, a table of holdings, and chart plots, providing a deeper understanding of the portfolio's historical movements.
_______________________
▋ OVERVIEW:
● Scenario (The chart above can be taken as an example) :
Let say, in 2010, a newly employed individual committed to saving $1,000 each month. Rather than relying on a traditional savings account, chose to invest the majority of monthly savings in stable well-established stocks. Allocating 30% of monthly saving to AMEX:SPY and another 30% to NASDAQ:QQQ , recognizing these as reliable options for steady growth. Additionally, there was an admired toward innovative business models of NASDAQ:AAPL , NASDAQ:MSFT , NASDAQ:AMZN , and NASDAQ:EBAY , leading to invest 10% in each of those companies. By the end of 2024, after 15 years, the total monthly deposits amounted to $179,000, which would have been the result of traditional saving alone. However, by sticking into long term invest, the value of the portfolio assets grew, reaching nearly $900,000.
_______________________
▋ OUTPUTS:
The table can be displayed in three formats:
1. Portfolio Index Title: displays the index name at the top, and at the bottom, it shows the index value, along with the chart timeframe, e.g., daily change in points and percentage.
2. Specifications: displays the essential information on portfolio performance, including the investment date range, total deposits, free cash, returns, and assets.
3. Holdings: a list of the holding securities inside a table that contains the ticker, last price, entry price, return percentage of the portfolio's total deposits, and latest weighted percentage of the portfolio. Additionally, a tooltip appears when the user passes the cursor over a ticker's cell, showing brief information about the company, such as the company's name, exchange market, country, sector, and industry.
4. Indication of New Deposit: An indication of a new deposit added to the portfolio for additional purchasing.
5. Chart: The portfolio's historical movements can be visualized in a plot, displayed as a bar chart, candlestick chart, or line chart, depending on the preferred format, as shown below.
_______________________
▋ INDICATOR SETTINGS:
Section(1): Table Settings
(1) Naming the index.
(2) Table location on the chart and cell size.
(3) Sorting Holdings Table. By securities’ {Return(%) Portfolio, Weight(%) Portfolio, or Ticker Alphabetical} order.
(4) Choose the type of index: {Assets, Return, or Return (%)}, and the plot type for the portfolio index: {Candle, Bar, or Line}.
(5) Positive/Negative colors.
(6) Table Colors (Title, Cell, and Text).
(7) To show/hide any of selected indicator’s components.
Section(2): Recurring Deposit Settings
(1) From DateTime of starting the investment.
(2) To DateTime of ending the investment
(3) The amount of recurring deposit into portfolio and currency.
(4) The frequency of recurring deposits into the portfolio {Weekly, 2-Weeks, Monthly, Quarterly, Yearly}
(5) The Depositing Model:
● Fixed: The amount for recurring deposits remains constant throughout the entire investment period.
● Increased %: The recurring deposit amount increases at the selected frequency and percentage throughout the entire investment period.
(5B) If the user selects “ Depositing Model: Increased % ”, specify the growth model (linear or exponential) and define the rate of increase.
Section(3): Portfolio Holdings
(1) Enable a ticker in the investment portfolio.
(2) The selected deposit frequency weight for a ticker. For example, if the monthly deposit is $1,000 and the selected weight for XYZ stock is 30%, $300 will be used to purchase shares of XYZ stock.
(3) Select up to 6 tickers that the investor is interested in for long-term investment.
Please let me know if you have any questions
Mean Price
^^ Plotting switched to Line.
This method of financial time series (aka bars) downsampling is literally, naturally, and thankfully the best you can do in terms of maximizing info gain. You can finally chill and feed it to your studies & eyes, and probably use nothing else anymore.
(HL2 and occ3 also have use cases, but other aggregation methods? Not really, even if they do, the use cases are ‘very’ specific). Tho in order to understand why, you gotta read the following wall, or just believe me telling you, ‘I put it on my momma’.
The true story about trading volumes and why this is all a big misdirection
Actually, you don’t need to be a quant to get there. All you gotta do is stop blindly following other people’s contextual (at best) solutions, eg OC2 aggregation xD, and start using your own brain to figure things out.
Every individual trade (basically an imprint on 1D price space that emerges when market orders hit the order book) has several features like: price, time, volume, AND direction (Up if a market buy order hits the asks, Down if a market sell order hits the bids). Now, the last two features—volume and direction—can be effectively combined into one (by multiplying volume by 1 or -1), and this is probably how every order matching engine should output data. If we’re not considering size/direction, we’re leaving data behind. Moreover, trades aren’t just one-price dots all the time. One trade can consume liquidity on several levels of the order book, so a single trade can be several ticks big on the price axis.
You may think now that there are no zero-volume ticks. Well, yes and no. It depends on how you design an exchange and whether you allow intra-spread trades/mid-spread trades (now try to Google it). Intra-spread trades could happen if implemented when a matching engine receives both buy and sell orders at the same microsecond period. This way, you can match the orders with each other at a better price for both parties without even hitting the book and consuming liquidity. Also, if orders have different sizes, the remaining part of the bigger order can be sent to the order book. Basically, this type of trade can be treated as an OTC trade, having zero volume because we never actually hit the book—there’s no imprint. Another reason why it makes sense is when we think about volume as an impact or imbalance act, and how the medium (order book in our case) responds to it, providing information. OTC and mid-spread trades are not aggressive sells or buys; they’re neutral ticks, so to say. However huge they are, sometimes many blocks on NYSE, they don’t move the price because there’s no impact on the medium (again, which is the order book)—they’re not providing information.
... Now, we need to aggregate these trades into, let’s say, 1-hour bars (remember that a trade can have either positive or negative volume). We either don’t want to do it, or we don’t have this kind of information. What we can do is take already aggregated OHLC bars and extract all the info from them. Given the market is fractal, bars & trades gotta have the same set of features:
- Highest & lowest ticks (high & low) <- by price;
- First & last ticks (open & close) <- by time;
- Biggest and smallest ticks <- by volume.*
*e.g., in the array ,
2323: biggest trade,
-1212: smallest trade.
Now, in our world, somehow nobody started to care about the biggest and smallest trades and their inclusion in OHLC data, while this is actually natural. It’s the same way as it’s done with high & low and open & close: we choose the minimum and maximum value of a given feature/axis within the aggregation period.
So, we don’t have these 2 values: biggest and smallest ticks. The best we can do is infer them, and given the fact the biggest and smallest ticks can be located with the same probability everywhere, all we can do is predict them in the middle of the bar, both in time and price axes. That’s why you can see two HL2’s in each of the 3 formulas in the code.
So, summed up absolute volumes that you see in almost every trading platform are actually just a derivative metric, something that I call Type 2 time series in my own (proprietary ‘for now’) methods. It doesn’t have much to do with market orders hitting the non-uniform medium (aka order book); it’s more like a statistic. Still wanna use VWAP? Ok, but you gotta understand you’re weighting Type 1 (natural) time series by Type 2 (synthetic) ones.
How to combine all the data in the right way (khmm khhm ‘order’)
Now, since we have 6 values for each bar, let’s see what information we have about them, what we don’t have, and what we can do about it:
- Open and close: we got both when and where (time (order) and price);
- High and low: we got where, but we don’t know when;
- Biggest & smallest trades: we know shit, we infer it the way it was described before.'
By using the location of the close & open prices relative to the high & low prices, we can make educated guesses about whether high or low was made first in a given bar. It’s not perfect, but it’s ultimately all we can do—this is the very last bit of info we can extract from the data we have.
There are 2 methods for inferring volume delta (which I call simply volume) that are presented everywhere, even here on TradingView. Funny thing is, this is actually 2 parts of the 1 method. I wonder how many folks see through it xD. The same method can be used for both inferring volume delta AND making educated guesses whether high or low was made first.
Imagine and/or find the cases on your charts to understand faster:
* Close > open means we have an up bar and probably the volume is positive, and probably high was made later than low.
* Close < open means we have a down bar and probably the volume is negative, and probably low was made later than high.
Now that’s the point when you see that these 2 mentioned methods are actually parts of the 1 method:
If close = open, we still have another clue: distance from open/close pair to high (HC), and distance from open/close pair to low (LC):
* HC < LC, probably high was made later.
* HC > LC, probably low was made later.
And only if close = open and HC = LC, only in this case we have no clue whether high or low was made earlier within a bar. We simply don’t have any more information to even guess. This bar is called a neutral bar.
At this point, we have both time (order) and price info for each of our 6 values. Now, we have to solve another weighted average problem, and that’s it. We’ll weight prices according to the order we’ve guessed. In the neutral bar case, open has a weight of 1, close has a weight of 3, and both high and low have weights of 2 since we can’t infer which one was made first. In all cases, biggest and smallest ticks are modeled with HL2 and weighted like they’re located in the middle of the bar in a time sense.
P.S.: I’ve also included a "robust" method where all the bars are treated like neutral ones. I’ve used it before; obviously, it has lesser info gain -> works a bit worse.
Mizar_LibraryThe "Mizar_Library" is a powerful tool designed for Pine Script™ programmer’s, providing a collection of general functions that facilitate the usage of Mizar’s DCA (Dollar-Cost-Averaging) bot system.
To begin using the Mizar Library, you first need to import it into your indicator script. Insert the following line below your indicator initiation line: import Mizar_Trading/Mizar_Library/1 as mizar (mizar is the chosen alias).
In the import statement, Mizar_Trading.Mizar_Library_v1 refers to the specific version of the Mizar Library you wish to use. Feel free to modify mizar to your preferred alias name.
Once the library is imported, you can leverage its functions by prefixing them with mizar. . This will prompt auto-completion suggestions displaying all the available user-defined functions provided by the Mizar Library.
Now, let's delve into some of the key functions available in the Mizar Library:
DCA_bot_msg(_cmd)
The DCA_bot_msg function accepts an user-defined type (UDT) _cmd as a parameter and returns a string with the complete JSON command for a Mizar DCA bot.
Parameters:
_cmd (bot_params) : ::: User-defined type (UDT) that holds all the necessary information for the bot command.
Returns: A string with the complete JSON command for a Mizar DCA bot.
rounding_to_ticks(value, ticks, rounding_type)
The rounding_to_ticks function rounds a calculated price to the nearest actual price based on the specified tick size.
Parameters:
value (float) : ::: The calculated price as float type, to be rounded to the nearest real price.
ticks (float) : ::: The smallest possible price obtained through a request in your script.
rounding_type (int) : ::: The rounding type for the price: 0 = closest real price, 1 = closest real price above, 2 = closest real price below.
Returns: A float value representing the rounded price to the next tick.
bot_params
Bot_params is an user-defined type (UDT) that represents the parameters required for a Mizar DCA bot.
Fields:
bot_id (series string) : The ID number of your Mizar DCA bot.
api_key (series string) : Your private API key from your Mizar account (keep it confidential!).
action (series string) : The command to perform: "open" (standard) or "close" optional .
tp_perc (series string) : The take profit percentage in decimal form (1% = "0.01") optional .
base_asset (series string) : The cryptocurrency you want to buy (e.g., "BTC").
quote_asset (series string) : The coin or fiat currency used for payment (e.g., "USDT" is standard if not specified) optional .
direction (series string) : The direction of the position: "long" or "short" (only applicable for two-way hedge bots) optional .
To obtain the JSON command string for the alert_function call, you can use the DCA_bot_msg function provided by the library. Simply pass the cmd_msg UDT as an argument and assign the returned string value to a variable.
Here's an example to illustrate the process:
// Import of the Mizar Library to use the included functions
import/Mizar_Trading/Mizar_Library/1 as mizar
// Example to set a variable called “cmd_msg” and all of its parameters
cmd_msg = mizar.bot_params. new()
cmd_msg.action := "open"
cmd_msg.api_key := "top secret"
cmd_msg.bot_id := "9999"
cmd_msg.base_asset := "BTC"
cmd_msg.quote_asset := "USDT"
cmd_msg.direction := "long"
cmd_msg.tp_perc := "0.015"
// Calling the Mizar conversion function named “DCA_bot_msg()” with the cmd_msg as argument to receive the JSON command and save it in a string variable called “alert_msg”
alert_msg = mizar.DCA_bot_msg(cmd_msg)
Feel free to utilize (series) string variables instead of constant strings. By incorporating the Mizar Library into your Pine Script, you gain access to a powerful set of functions and can leverage them according to your specific requirements.
For additional help or support, you can join the Mizar Discord channel. There, you'll find a dedicated Pine Script channel where you can ask any questions related to Pine Script.
AggBands (v1) [qrsq]The "AggBands" indicator is a custom trading indicator designed to provide a consolidated view of the price action across multiple assets or trading pairs. It combines the price data from multiple tickers and calculates an aggregated price using user-defined weights for each ticker.
The indicator starts by defining the tickers to be included in the aggregation. You can choose from predefined configurations such as "BTC PAIRS," "CRYPTO TOTAL MARKET CAP," "TOP 5 PAIRS," "TOP 5 MEMECOINS," "SPX," "DXY," or "FANG." Each configuration includes specific tickers or indices relevant to the chosen category.
The indicator then fetches the closing, high, and low prices for each ticker and applies the user-defined weights to calculate the aggregated prices. The aggregated prices are normalized within a specified length to provide a consistent scale across different assets or pairs.
Next, the indicator calculates the midpoint, which is the average of the highest high and lowest low of the aggregated prices over a specified aggregation period.
To assess the volatility, the indicator calculates the price range and applies the Average True Range (ATR) indicator to determine the volatility value. The standard deviation is then computed using the price range and aggregation period, with an additional scaling factor applied to the volatility value.
Based on the standard deviation, the indicator generates multiple bands above and below the midpoint. By default, three standard deviation bands are calculated, but the user can choose between one and five bands. The upper and lower bands are smoothed using various moving average (MA) types, such as Simple Moving Average (SMA), Exponential Moving Average (EMA), Smoothed Moving Average (SMMA/RMA), Weighted Moving Average (WMA), Volume Weighted Moving Average (VWMA), Volume Weighted Average Price (VWAP), or Arnaud Legoux Moving Average (ALMA). The user can also adjust the length, offset, and sigma parameters for the moving averages.
The indicator can optionally smooth the midpoint, upper bands, and lower bands using a separate set of moving average parameters.
The indicator can be useful for traders and analysts who want to gain a consolidated view of price movements across multiple assets or trading pairs. It helps identify trends, volatility, and potential support and resistance levels based on the aggregated price and standard deviation bands. Traders can use this information to make informed decisions about trading strategies, risk management, and market analysis.
Volume Weighted Real Relative Strength (RS/RW)Volume Weighted Real Relative Strength (VRRS) measures the relative strength of a tickers vs. a benchmark ticker for the market, i.e. $SPY, and a benchmark ticker for the sector it is in. The calculation of VRRS is done as follow:
VRRS = * VolWeighted * 100
Where :
Close is Close price
smaClose is the last simple moving average value.
Ref is Reference ticker
VolWeighted is the volume weighted factor and is defined as (smaVol_short / smaVol_long); where smaVol_short, smaVol_long are the simple moving average of volume calculated for a short period (i.e. 21 period) and long period (i.e. 5 days), respectively.
Feature :
1. It can show two VRRS, one calculated against a market benchmark (i.e. $SPY) and one for a sector benchmark.
2. It shows also the bar plot of the benchmark ticker.
Linear Regression & RSI Multi-Function Screener with Table-LabelHi fellow traders..
Happy to share a Linear Regression & RSI Multi-Function Custom Screener with Table-Labels...
The Screener scans for Linear Regression 2-SD Breakouts and RSI OB/OS levels for the coded tickers and gives Summary alerts
Uses Tables (dynamica resizing) for the scanner output instead of standard labels!
This Screener cum indicator collection has two distinct objectives..
1. Attempt re-entry into trending trades.
2. Attempt Counter trend trades using linear regression , RSI and Zigzag.
Briefly about the Screener functions..
a. It uses TABLES as Labels a FIRST for any Screener on TV.
b. Tables dynamically resize based on criteria..
c. Alerts for breakouts of the UPPER and the LOWER regression channels.(2 SD)
d. In addition to LinReg it also Screens RSI for OB/OS levels so a multifunction Screener.
e. Of course has the standard summary Alerts and programmable format for Custom functions.
f. Uses only the inbuilt Auto Fib and Lin Reg code for the screener.(No proprietary stuff)
g. The auto Zigzag code is derived(Auto fib).
Question what are all these doing in a single screener ??
ZigZag is very useful in determining Trend Up or Down from one Pivot to another.
So Once you have a firm view of the Current Trend for your chosen timeframe and ticker…
We can consider few possible trading scenarios..
a. Re-entry in an Up Trend - Combination of OS Rsi And a Lower Channel breach followed by a re-entry back into the regression channel CAN be used as an effective re-entry.
b. Similarily one can join a Down Trend on OB Rsi and Upper Channel line breach followed by re-entry into the regression channel.
If ZigZag signals a range-bound market, bound within channel lines then the Upper breakout can be used to Sell and vice-versa!
In short many possibilities for using these functions together with Scanner and Alerts.
This facilitates timely PROFITABLE Trending and Counter trend opportunities across multiple tickers.
You must give a thorough READ to the various available tutorials on ZigZag / Regression and Fib retracements before attempting counter trend trades using these tools!!
A small TIP – Markets are sideways or consolidating 70% of the time!!
Acknowledgements: - Thanks a lot DGTRD for the Auto ZigZag code and also for the eagerness to help wherever possible..Respect!!
Disclaimer: The Alerts and Screener are just few tools among many and not any kind of Buy/Sell recommendations. Unless you have sufficient trading experience please consult a Financial advisor before investing real money.
*The alerts are set for crossovers however for viewing tickers trading above or below the channel use code in line 343 and 344 after setting up the Alerts!
** RSI alerts are disabled by default to avoid clutter, but if needed one can activate code lines 441,442,444 and 445
Wish you all, Happy Profitable Trading!