Precision Trading Strategy: Golden EdgeThe PTS: Golden Edge strategy is designed for scalping Gold (XAU/USD) on lower timeframes, such as the 1-minute chart. It captures high-probability trade setups by aligning with strong trends and momentum, while filtering out low-quality trades during consolidation or low-volatility periods.
The strategy uses a combination of technical indicators to identify optimal entry points:
1. Exponential Moving Averages (EMAs): A fast EMA (3-period) and a slow EMA (33-period) are used to detect short-term trend reversals via crossover signals.
2. Hull Moving Average (HMA): A 66-period HMA acts as a higher-timeframe trend filter to ensure trades align with the overall market direction.
3. Relative Strength Index (RSI): A 12-period RSI identifies momentum. The strategy requires RSI > 55 for long trades and RSI < 45 for short trades, ensuring entries are backed by strong buying or selling pressure.
4. Average True Range (ATR): A 14-period ATR ensures trades occur only during volatile conditions, avoiding choppy or low-movement markets.
By combining these tools, the PTS: Golden Edge strategy creates a precise framework for scalping and offers a systematic approach to capitalize on Gold’s price movements efficiently.
EDGE
Optimal Buy Day (Zeiierman)█ Overview
The Optimal Buy Day (Zeiierman) indicator identifies optimal buying days based on historical price data, starting from a user-defined year. It simulates investing a fixed initial capital and making regular monthly contributions. The unique aspect of this indicator involves comparing systematic investment on specific days of the month against a randomized buying day each month, aiming to analyze which method might yield more shares or a better average price over time. By visualizing the potential outcomes of systematic versus randomized buying, traders can better understand the impact of market timing and how regular investments might accumulate over time.
These statistics are pivotal for traders and investors using the script to analyze historical performance and strategize future investments. By understanding which days offered more shares for their money or lower average prices, investors can tailor their buying strategies to potentially enhance returns.
█ Key Statistics
⚪ Shares
Definition: Represents the total number of shares acquired on a particular day of the month across the entire simulation period.
How It Works: The script calculates how many shares can be bought each day, given the available capital or monthly contribution. This calculation takes into account the day's opening price and accumulates the total shares bought on that day over the simulation period.
Interpretation: A higher number of shares indicates that the day consistently offered better buying opportunities, allowing the investor to acquire more shares for the same amount of money. This metric is crucial for understanding which days historically provided more value.
⚪ AVG Price
Definition: The average price paid per share on a particular day of the month, averaged over the simulation period.
How It Works: Each time shares are bought, the script calculates the average price per share, factoring in the new shares purchased at the current price. This average evolves over time as more shares are bought at varying prices.
Interpretation: The average price gives insight into the cost efficiency of buying shares on specific days. A lower average price suggests that buying on that day has historically led to better pricing, making it a potentially more attractive investment strategy.
⚪ Buys
Definition: The total number of transactions or buys executed on a particular day of the month throughout the simulation.
How It Works: This metric increments each time shares are bought on a specific day, providing a count of all buying actions taken.
Interpretation: The number of buys indicates the frequency of investment opportunities. A higher count could mean more consistent opportunities for investment, but it's important to consider this in conjunction with the average price and the total shares acquired to assess overall strategy effectiveness.
⚪ Most Shares
Definition: Identifies the day of the month on which the highest number of shares were bought, highlighting the specific day and the total shares acquired.
How It Works: After simulating purchases across all days of the month, the script identifies which day resulted in the highest total number of shares bought.
Interpretation: This metric points out the most opportune day for volume buying. It suggests that historically, this day provided conditions that allowed for maximizing the quantity of shares purchased, potentially due to lower prices or other factors.
⚪ Best Price
Definition: Highlights the day of the month that offered the lowest average price per share, indicating both the day and the price.
How It Works: The script calculates the average price per share for each day and identifies the day with the lowest average.
Interpretation: This metric is key for investors looking to minimize costs. The best price day suggests that historically, buying on this day led to acquiring shares at a more favorable average price, potentially maximizing long-term investment returns.
⚪ Randomized Shares
Definition: This metric represents the total number of shares acquired on a randomly selected day of the month, simulated across the entire period.
How It Works: At the beginning of each month within the simulation, the script selects a random day when the market is open and calculates how many shares can be purchased with the available capital or monthly contribution at that day's opening price. This process is repeated each month, and the total number of shares acquired through these random purchases is tallied.
Interpretation: Randomized shares offer a comparison point to systematic buying strategies. By comparing the total shares acquired through random selection against those bought on the best or worst days, investors can gauge the impact of timing and market fluctuations on their investment strategy. A higher total in randomized shares might indicate that over the long term, the specific days chosen for investment might matter less than consistent market participation. Conversely, if systematic strategies yield significantly more shares, it suggests that timing could indeed play a crucial role in maximizing investment returns.
⚪ Randomized Price
Definition: The average price paid per share for the shares acquired on the randomly selected days throughout the simulation period.
How It Works: Each time shares are bought on a randomly chosen day, the script calculates the average price paid for all shares bought through this randomized strategy. This average price is updated as the simulation progresses, reflecting the cost efficiency of random buying decisions.
Interpretation: The randomized price metric helps investors understand the cost implications of a non-systematic, random investment approach. Comparing this average price to those achieved through more deliberate, systematic strategies can reveal whether consistent investment timing strategies outperform random investment actions in terms of cost efficiency. A lower randomized price suggests that random buying might not necessarily result in higher costs, while a higher average price indicates that systematic strategies might provide better control over investment costs.
█ How to Use
Traders can use this tool to analyze historical data and simulate different investment strategies. By inputting their initial capital, regular contribution amount, and start year, they can visually assess which days might have been more advantageous for buying, based on historical price actions. This can inform future investment decisions, especially for those employing dollar-cost averaging strategies or looking to optimize entry points.
█ Settings
StartYear: This setting allows the user to specify the starting year for the investment simulation. Changing this value will either extend or shorten the period over which the simulation is run. If a user increases the value, the simulation begins later and covers a shorter historical period; decreasing the value starts the simulation earlier, encompassing a longer time frame.
Capital: Determines the initial amount of capital with which the simulation begins. Increasing this value simulates starting with more capital, which can affect the number of shares that can be initially bought. Decreasing this value simulates starting with less capital.
Contribution: Sets the monthly financial contribution added to the investment within the simulation. A higher contribution increases the investment each month and could lead to more shares being purchased over time. Lowering the contribution decreases the monthly investment amount.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
Probabilities Module - The Quant Science This module can be integrate in your code strategy or indicator and will help you to calculate the percentage probability on specific event inside your strategy. The main goal is improve and simplify the workflow if you are trying to build a quantitative strategy or indicator based on statistics or reinforcement model.
Logic
The script made a simulation inside your code based on a single event. For single event mean a trading logic composed by three different objects: entry, take profit, stop loss.
The script scrape in the past through a look back function and return the positive percentage probability about the positive event inside the data sample. In this way you are able to understand and calculate how many time (in percentage term) the conditions inside the single event are positive, helping to create your statistical edge.
You can adjust the look back period in you user interface.
How can set up the module for your use case
At the top of the script you can find:
1. entry_condition : replace the default condition with your specific entry condition.
2. TPcondition_exit : replace the default condition with your specific take profit condition.
3. SLcondition_exit : replace the default condition with your specific stop loss condition.
Oscillator EdgesAnother simple script to be added on top of other indicators. Simply provides a symbol of varying color depending on the value of the oscillator. Allows up to 4 different colors in each direction. Includes alerts conditions. Demonstration is the indicator being applied to the RSI (purple) included in Market Cipher B.
To use, simply add it to your indicator, and choose and oscillator of your choice in the Input Settings. Alternatively, you can just keep it on 'close' and use the built in RSI. Or, you can use the RSI formula on top of something else (if that's your thing).
The names are silly, so I hope this is okay with all of you.
Let me know what you think, and if there are any problems, questions, or concerns!
vertical_pricer
USAGE
1. Select the type of contract (call or put), the long strike, and the width.
2. Select the volatility model
3. The standard deviation is shown, enter it into the input.
The tool gives a theoretical price of a vertical spread, based on a
historical sample. The test assumes that a spread of equal width was sold on
every prior trading day at the given standard deviation, based on the
volatility model and duration of the contract. For example, if the 20 dte
110 strike is presently two standard deviations based on the 30 period
historical volatility, then the theoretical value is the average price all
2SD (at 20 dte) calls upon expiration, limited by the width of the spread and
normalized according to the present value of the underlying.
Other statistics include:
- The number of spreads in the sample, and percentage expired itm
- The median value at expiration
- The Nth percentile value of spreads at expiration
- The number of spreads that expired at max loss
Check the script comments and release notes for further updates, since Tradingview doesn't allow me to edit this description.
strangle_pricerUsage:
1. Set the put and call strike inputs to values of your choosing.
2. Select "days to expiration".
3. Set the put and call standard deviations using the output table.
The indicator is meant help price a strangle using historical data and a volatility model. By default, the model is an ewma-method historical volatility. After selecting strikes and standard their corresponding standard deviation, theoretical values and probabilities will be shown in the table. The script is initialized with -1 for several inputs, and won't show any data until these are adjusted.
The theoretical values shown assume a strangle was bought or sold on every historical bar, and averaging their value at expiration.
For example, if you choose the $50 call and $40 put when the underlying is at $45 and there are 30 days until expiration, suppose the volatility is N and
these strikes correspond to M standard deviations. Input those and the resulting theoretial values shown will be based on opening a 30 dte call and put at M standard deviations with respect to the volatility at each bar.
- Past volatility forecasts are plotted in blue, and hidden by default.
- The current volatility forecast is drawn as a blue line.
- The put and call strikes are drawn as red lines.
This indicator is only meant for the daily chart!
Since I won't be able to edit this description later, also check the release notes and script comments for important changes.
Edge-Preserving FilterIntroduction
Edge-preserving smoothing is often used in image processing in order to preserve edge information while filtering the remaining signal. I introduce two concepts in this indicator, edge preservation and an adaptive cumulative average allowing for fast edge-signal transition with period increase over time. This filter have nothing to do with classic filters for image processing, those filters use kernels convolution and are most of the time in a spatial domain.
Edge Detection Method
We want to minimize smoothing when an edge is detected, so our first goal is to detect an edge. An edge will be considered as being a peak or a valley, if you recall there is one of my indicator who aim to detect peaks and valley (reference at the bottom of the post) , since this estimation return binary outputs we will use it to tell our filter when to stop filtering.
Filtering Increase By Using Multi Steps Cumulative Average
The edge detection is a binary output, using a exponential smoothing could be possible and certainly more efficient but i wanted instead to try using a cumulative average approach because it smooth more and is a bit more original to use an adaptive architecture using something else than exponential averaging. A cumulative average is defined as the sum of the price and the previous value of the cumulative average and then this result is divided by n with n = number of data points. You could say that a cumulative average is a moving average with a linear increasing period.
So lets call CMA our cumulative average and n our divisor. When an edge is detected CMA = close price and n = 1 , else n is equal to previous n+1 and the CMA act as a normal cumulative average by summing its previous values with the price and dividing the sum by n until a new edge is detected, so there is a "no filtering state" and a "filtering state" with linear period increase transition, this is why its multi-steps.
The Filter
The filter have two parameters, a length parameter and a smooth parameter, length refer to the edge detection sensitivity, small values will detect short terms edges while higher values will detect more long terms edges. Smooth is directly related to the edge detection method, high values of smooth can avoid the detection of some edges.
smooth = 200
smooth = 50
smooth = 3
Conclusion
Preserving the price edges can be useful when it come to allow for reactivity during important price points, such filter can help with moving average crossover methods or can be used as a source for other indicators making those directly dependent of the edge detection.
Rsi with a period of 200 and our filter as source, will cross triggers line when an edge is detected
Feel free to share suggestions ! Thanks for reading !
References
Peak/Valley estimator used for the detection of edges in price.
Session P EdgesThis is an attempt to chart the primary balance ranges, however,
I have been having difficulty getting the lows to work in the graph, any assistance would be welcome
B3 Donchian CloudsThis is the Donchian Channel expressed with a percentage cloud. Default 12.5% of the range will be filled at each edge, this helps to show reversal possibilities as price returns to the area between the clouds. This offers a usage to essentially fade the turtle trader system. That system is loosely based on the playing of the breakouts of the the channel... as you can see the that last turtle trade long in YM1! was and is off the charts awesome. I will look for the fall out of the cloud to short the market.