Futures Tick and Point Value TableDisplays a table in the upper right corner of the chart showing the tick and point value in USD.
Narzędzia Pine
Prepare Targets, Stop Loss, Position Size and calculate PnL You are watching the price action of your favorite coin. Then the price changes quickly and you know you could start a good trade now.
But how much should you buy, where should you set your Target for Profit Taking and your Stop Loss? How much money do you want to risk, how much money would you win if the trade is succesfull?
This indicator helps you to set up your trade in a quick way, no need to do some calculations by hand.
How does it work?
Just enter the prices where you want to take Profit and where your Stopp Loss should be.
Enter the number of coins and wether you buy or sell/go long or short.
These targets are then shown in the chart, move them around to see if your stopp loss is positioned well. See directly what your profit or loss would be.
See some Screenshots with more explanations for what is possible and how to set up everything.
General Overview:
How to set up the Trade:
Formatting and Extras:
Let me know if you like it!
Murrey Math
The Murrey Math indicator is a set of horizontal price levels, calculated from an algorithm developed by stock trader T.J. Murray.
The main concept behind Murrey Math is that prices tend to react and rotate at specific price levels. These levels are calculated by dividing the price range into fixed segments called "ranges", usually using a number of 8, 16, 32, 64, 128 or 256.
Murrey Math levels are calculated as follows:
1. A particular price range is taken, for example, 128.
2. Divide the current price by the range (128 in this example).
3. The result is rounded to the nearest whole number.
4. Multiply that whole number by the original range (128).
This results in the Murrey Math level closest to the current price. More Murrey levels are calculated and drawn by adding and subtracting multiples of the range to the initially calculated level.
Traders use Murrey Math levels as areas of possible support and resistance as it is believed that prices tend to react and pivot at these levels. They are also used to identify price patterns and possible entry and exit points in trading.
The Murrey Math indicator itself simply calculates and draws these horizontal levels on the price chart, allowing traders to easily visualize them and use them in their technical analysis.
HOW TO USE THIS INDICATOR?
To use the Murrey Math indicator effectively, here are some tips:
1. Choose the appropriate Murrey Math range : The Murrey Math range input (128 by default in the provided code) determines the spacing between the levels. Common ranges used are 8, 16, 32, 64, 128, and 256. A smaller range will give you more levels, while a larger range will give you fewer levels. Choose a range that suits the volatility and trading timeframe you're working with.
2. Identify potential support and resistance levels: The horizontal lines drawn by the indicator represent potential support and resistance levels based on the Murrey Math calculation. Prices often react or reverse at these levels, so they can be used to spot areas of interest for entries and exits.
3. Look for price reactions at the levels: Watch for price action like rejections, bounces, or breakouts at the Murrey Math levels. These reactions can signal potential trend continuation or reversal setups.
4. Trail stop-loss orders: You can place stop-loss orders just below/above the nearest Murrey Math level to manage risk if the price moves against your trade.
5. Set targets at future levels: Project potential profit targets by looking at upcoming Murrey Math levels in the direction of the trend.
7. Adjust range as needed: If prices are consistently breaking through levels without reacting, try adjusting the range input to a different value to see if it provides better levels.
In which asset can this indicator perform better?
The Murrey Math indicator can potentially perform well on any liquid financial asset that exhibits some degree of mean-reversion or trading range behavior. However, it may be more suitable for certain asset classes or trading timeframes than others.
Here are some assets and scenarios where the Murrey Math indicator can potentially perform better:
1. Forex Markets: The foreign exchange market is known for its ranging and mean-reverting nature, especially on higher timeframes like the daily or weekly charts. The Murrey Math levels can help identify potential support and resistance levels within these trading ranges.
2. Futures Markets: Futures contracts, such as those for commodities (e.g., crude oil, gold, etc.) or equity indices, often exhibit trading ranges and mean-reversion trends. The Murrey Math indicator can be useful in identifying potential turning points within these ranges.
3. Stocks with Range-bound Behavior: Some stocks, particularly those of large-cap companies, can trade within well-defined ranges for extended periods. The Murrey Math levels can help identify the boundaries of these ranges and potential reversal points.
4. I ntraday Trading: The Murrey Math indicator may be more effective on lower timeframes (e.g., 1-hour, 30-minute, 15-minute) for intraday trading, as prices tend to respect support and resistance levels more closely within shorter time periods.
5. Trending Markets: While the Murrey Math indicator is primarily designed for range-bound markets, it can also be used in trending markets to identify potential pullback or continuation levels.
1995-Present - Inflation and Purchasing PowerGood day, everyone! Today, we're going to look at a chart that's a bit different from the usual price charts we analyse. This isn't just any chart; it's a lens into the past, adjusted for the reality of inflation—a concept we often hear about but seldom see directly applied to our trading charts.
What we have here is an 'Inflation Adjusted Price' indicator on TradingView, and it's doing something quite special. It's showing us the price of our asset, let's say the S&P 500, not just in today's dollars, but in the dollars of 1995. Why 1995, you ask? Well, it's the starting point we've chosen to measure how much actual buying power has changed since then.
So, every point on this red line we see represents what the S&P 500's value would be if we stripped away the effects of inflation. This is the price in terms of what your money could actually buy you back in 1995.
As traders and investors, we're always looking at prices going up and thinking, 'Great! My investment is growing!' But the real question we should ask is, 'Is my money growing in real terms? Can it buy me more than it did last year, or five, ten, or twenty-five years ago?'
This chart tells us exactly that. If the red line is above the actual price, it means that the S&P 500 has not just grown in nominal terms, but it has actually outpaced inflation. Your investment has grown in real terms; it can buy you more now than it could back in 1995.
On the flip side, if the red line is below the actual price, that's a sign that while the nominal price might be up, the real value, the purchasing power, hasn't grown as much or could even have fallen.
This view is crucial, especially for the long-term investors among us. It gives us a reality check on our investments and savings. Are we truly growing our wealth, or are we just keeping up with the cost of living? This indicator answers that.
Remember, the true measure of financial growth is not just the numbers on a chart. It's what you can do with those numbers—how much bread, or eggs, or yes, even houses, you can buy with your hard-earned money
BTC Purchasing Power 2009-20XX! Hello, today I'm going to show you something that shifts our perspective on Bitcoin's value, not just in nominal terms, but adjusted for the real buying power over the years. This Pine Script TAS developed for TradingView does exactly that by taking into account inflation rates from 2009 to the present.
As you know, inflation erodes the purchasing power of money. That $100 in 2009 does not buy you the same amount in goods or services today. The same concept applies to Bitcoin. While we often look at its price in terms of dollars, pounds, or euros, it's crucial to understand what that price really means in terms of purchasing power.
What this script does is adjust the price of Bitcoin for cumulative inflation since 2009, allowing us to see not just how the nominal price has changed, but how its value as a means of purchasing goods and services has evolved.
For example, if we see Bitcoin's price at $60,000 today, that number might seem high compared to its early years. However, when we adjust this price for inflation, we might find that in terms of 2009's purchasing power, the effective price might be somewhat lower. This adjusted price gives us a more accurate reflection of Bitcoin's true value over time.
This script plots two lines on the chart:
The Original BTC Price: This is the unadjusted price of Bitcoin as we typically see it.
BTC Purchasing Power: This line shows Bitcoin's price adjusted for inflation, reflecting how many goods or services Bitcoin could buy at that point in time compared to 2009.
By comparing these lines, we can observe periods where Bitcoin's purchasing power significantly increased, even if the nominal price was not at its peak. This can help us identify moments when Bitcoin was undervalued or overvalued in real terms.
This analysis is crucial for long-term investors and traders who want to understand Bitcoin's value beyond the surface-level price movements. It helps us appreciate Bitcoin's potential as a store of value, especially in contexts where traditional currencies are losing purchasing power due to inflation.
Remember, investing is not just about riding price waves; it's about understanding the underlying value. And that's precisely what this script helps us to uncover
Vertical line at 8 AMThis indicator plots a blue vertical line on the chart when it's 8 AM, providing a clear visual reference of this time point on the TradingView chart.
Stock Bee's 4%Stock Bee's 4%
First Things First
- This indicator is a replica of Pradeep Bonde aka Stock Bee’s 4% indicator which he uses in the TC2000 platform for trading momentum burst and EP 9 million setup.
- Disclaimer: This indicator will not give any buy or sell signal. This is just a supporting tool to improve efficiency in my trading.
- Apply Indicators and then open indicator settings and read the following simultaneously to understand better.
- Default color settings are best suited for light themes. Which is also my personal preference.
- Users can change most of the default options in settings according to their personal preference in settings.
- When we open settings we can see 3 tabs that are {Inputs tab} {Style tab} {Visibility tab} each tab have its own options, Understand and use it accordingly.
- Background Color grading that is “Green” background means parameter favorable, “Red” not favorable for my trading.
- Indicator will be only visible in the Daily time frame as its primary TF is daily. In the lower time frame nothing is plotted.
- An indicator is plotted on a different plane and does not overlay in the existing plane.
Contents
+4% BO
-4% BO
Volume
+4% BO
- If the %change is more than 4% and today's volume > yesterday's volume and volume > 100000 then the green line is plotted from 0 to 1.
- This helps in trading momentum burst setup and to spot 4% BO easily.
{Style Tab}
- “Check Mark” Users can Show/Hide the line.
- “+4% BO” Default “Green color”. Users have the option to change.
- “Line Type” Default settings, Users have the option to change.
-4% BO
If the %change is less than -4% and today's volume > yesterday's volume and volume > 100000 then the green line is plotted from 0 to 1.
This helps in trading momentum burst setup and to spot -4% BO easily.
{Style Tab}
- “Check Mark” Users can Show/Hide the line.
- “-4% BO” Default “Red color”. Users have the option to change.
- “Line Type” Default settings, Users have the option to change.
Volume
- If Today’s Volume is greater than Default settings that is 9 Million then Blue color line is plotted similar to +/-4% B) however if u want to plot like Pradeep Bonde aka Stock Bee style then user have to change settings from “line” type to “histogram” type in style tab of settings.
- This is used for spotting EP 9 Million setup.
{Input Tab}
- “Volume” Default is (9). Users have the option to change as per their preference. And the number should be in millions.
{Style Tab}
- “Check Mark” Users can Show/Hide the line.
- “Volume” Default ”Blue color”. Users have the option to change.
- “Line Type” Default settings, Users have the option to change.
To use it similar to Stock Bee, change “Line” to “Histogram”.
Highly Recommended Setting to change immediately
{Style Tab} Outputs Section
“Check Mark” Labels on price scale. “Uncheck it”.
“Check Mark” Values in Status Line. “Uncheck it”.
*****
Bitcoin 5A Strategy@LilibtcIn our long-term strategy, we have deeply explored the key factors influencing the price of Bitcoin. By precisely calculating the correlation between these factors and the price of Bitcoin, we found that they are closely linked to the value of Bitcoin. To more effectively predict the fair price of Bitcoin, we have built a predictive model and adjusted our investment strategy accordingly based on this model. In practice, the prediction results of this model correspond quite high with actual values, fully demonstrating its reliability in predicting price fluctuations.
When the future is uncertain and the outlook is unclear, people often choose to hold back and avoid risks, or even abandon their original plans. However, the prediction of Bitcoin is full of challenges, but we have taken the first step in exploring.
Table of contents:
Usage Guide
Step 1: Identify the factors that have the greatest impact on Bitcoin price
Step 2: Build a Bitcoin price prediction model
Step 3: Find indicators for warning of bear market bottoms and bull market tops
Step 4: Predict Bitcoin Price in 2025
Step 5: Develop a Bitcoin 5A strategy
Step 6: Verify the performance of the Bitcoin 5A strategy
Usage Restrictions
🦮Usage Guide:
1. On the main interface, modify the code, find the BTCUSD trading pair, and select the BITSTAMP exchange for trading.
2. Set the time period to the daily chart.
3. Select a logarithmic chart in the chart type to better identify price trends.
4. In the strategy settings, adjust the options according to personal needs, including language, display indicators, display strategies, display performance, display optimizations, sell alerts, buy prompts, opening days, backtesting start year, backtesting start month, and backtesting start date.
🏃Step 1: Identify the factors that have the greatest impact on Bitcoin price
📖Correlation Coefficient: A mathematical concept for measuring influence
In order to predict the price trend of Bitcoin, we need to delve into the factors that have the greatest impact on its price. These factors or variables can be expressed in mathematical or statistical correlation coefficients. The correlation coefficient is an indicator of the degree of association between two variables, ranging from -1 to 1. A value of 1 indicates a perfect positive correlation, while a value of -1 indicates a perfect negative correlation.
For example, if the price of corn rises, the price of live pigs usually rises accordingly, because corn is the main feed source for pig breeding. In this case, the correlation coefficient between corn and live pig prices is approximately 0.3. This means that corn is a factor affecting the price of live pigs. On the other hand, if a shooter's performance improves while another shooter's performance deteriorates due to increased psychological pressure, we can say that the former is a factor affecting the latter's performance.
Therefore, in order to identify the factors that have the greatest impact on the price of Bitcoin, we need to find the factors with the highest correlation coefficients with the price of Bitcoin. If, through the analysis of the correlation between the price of Bitcoin and the data on the chain, we find that a certain data factor on the chain has the highest correlation coefficient with the price of Bitcoin, then this data factor on the chain can be identified as the factor that has the greatest impact on the price of Bitcoin. Through calculation, we found that the 🔵number of Bitcoin blocks is one of the factors that has the greatest impact on the price of Bitcoin. From historical data, it can be clearly seen that the growth rate of the 🔵number of Bitcoin blocks is basically consistent with the movement direction of the price of Bitcoin. By analyzing the past ten years of data, we obtained a daily correlation coefficient of 0.93 between the number of Bitcoin blocks and the price of Bitcoin.
🏃Step 2: Build a Bitcoin price prediction model
📖Predictive Model: What formula is used to predict the price of Bitcoin?
Among various prediction models, the linear function is the preferred model due to its high accuracy. Take the standard weight as an example, its linear function graph is a straight line, which is why we choose the linear function model. However, the growth rate of the price of Bitcoin and the number of blocks is extremely fast, which does not conform to the characteristics of the linear function. Therefore, in order to make them more in line with the characteristics of the linear function, we first take the logarithm of both. By observing the logarithmic graph of the price of Bitcoin and the number of blocks, we can find that after the logarithm transformation, the two are more in line with the characteristics of the linear function. Based on this feature, we choose the linear regression model to establish the prediction model.
From the graph below, we can see that the actual red and green K-line fluctuates around the predicted blue and 🟢green line. These predicted values are based on fundamental factors of Bitcoin, which support its value and reflect its reasonable value. This picture is consistent with the theory proposed by Marx in "Das Kapital" that "prices fluctuate around values."
The predicted logarithm of the market cap of Bitcoin is calculated through the model. The specific calculation formula of the Bitcoin price prediction value is as follows:
btc_predicted_marketcap = math.exp(btc_predicted_marketcap_log)
btc_predicted_price = btc_predicted_marketcap / btc_supply
🏃Step 3: Find indicators for early warning of bear market bottoms and bull market tops
📖Warning Indicator: How to Determine Whether the Bitcoin Price has Reached the Bear Market Bottom or the Bull Market Top?
By observing the Bitcoin price logarithmic prediction chart mentioned above, we notice that the actual price often falls below the predicted value at the bottom of a bear market; during the peak of a bull market, the actual price exceeds the predicted price. This pattern indicates that the deviation between the actual price and the predicted price can serve as an early warning signal. When the 🔴 Bitcoin price deviation is very low, as shown by the chart with 🟩green background, it usually means that we are at the bottom of the bear market; Conversely, when the 🔴 Bitcoin price deviation is very high, the chart with a 🟥red background indicates that we are at the peak of the bull market.
This pattern has been validated through six bull and bear markets, and the deviation value indeed serves as an early warning signal, which can be used as an important reference for us to judge market trends.
🏃Step 4:Predict Bitcoin Price in 2025
📖Price Upper Limit
According to the data calculated on February 25, 2024, the 🟠upper limit of the Bitcoin price is $194,287, which is the price ceiling of this bull market. The peak of the last bull market was on November 9, 2021, at $68,664. The bull-bear market cycle is 4 years, so the highest point of this bull market is expected in 2025. That is where you should sell the Bitcoin. and the upper limit of the Bitcoin price will exceed $190,000. The closing price of Bitcoin on February 25, 2024, was $51,729, with an expected increase of 2.7 times.
🏃Step 5: Bitcoin 5A Strategy Formulation
📖Strategy: When to buy or sell, and how many to choose?
We introduce the Bitcoin 5A strategy. This strategy requires us to generate trading signals based on the critical values of the warning indicators, simulate the trades, and collect performance data for evaluation. In the Bitcoin 5A strategy, there are three key parameters: buying warning indicator, batch trading days, and selling warning indicator. Batch trading days are set to ensure that we can make purchases in batches after the trading signal is sent, thus buying at a lower price, selling at a higher price, and reducing the trading impact cost.
In order to find the optimal warning indicator critical value and batch trading days, we need to adjust these parameters repeatedly and perform backtesting. Backtesting is a method established by observing historical data, which can help us better understand market trends and trading opportunities.
Specifically, we can find the key trading points by watching the Bitcoin price log and the Bitcoin price deviation chart. For example, on August 25, 2015, the 🔴 Bitcoin price deviation was at its lowest value of -1.11; on December 17, 2017, the 🔴 Bitcoin price deviation was at its highest value at the time, 1.69; on March 16, 2020, the 🔴 Bitcoin price deviation was at its lowest value at the time, -0.91; on March 13, 2021, the 🔴 Bitcoin price deviation was at its highest value at the time, 1.1; on December 31, 2022, the 🔴 Bitcoin price deviation was at its lowest value at the time, -1.
To ensure that all five key trading points generate trading signals, we set the warning indicator Bitcoin price deviation to the larger of the three lowest values, -0.9, and the smallest of the two highest values, 1. Then, we buy when the warning indicator Bitcoin price deviation is below -0.9, and sell when it is above 1.
In addition, we set the batch trading days as 25 days to implement a strategy that averages purchases and sales. Within these 25 days, we will invest all funds into the market evenly, buying once a day. At the same time, we also sell positions at the same pace, selling once a day.
📖Adjusting the threshold: a key step to optimizing trading strategy
Adjusting the threshold is an indispensable step for better performance. Here are some suggestions for adjusting the batch trading days and critical values of warning indicators:
• Batch trading days: Try different days like 25 to see how it affects overall performance.
• Buy and sell critical values for warning indicators: iteratively fine-tune the buy threshold value of -0.9 and the sell threshold value of 1 exhaustively to find the best combination of threshold values.
Through such careful adjustments, we may find an optimized approach with a lower maximum drawdown rate (e.g., 11%) and a higher cumulative return rate for closed trades (e.g., 474 times). The chart below is a backtest optimization chart for the Bitcoin 5A strategy, providing an intuitive display of strategy adjustments and optimizations.
In this way, we can better grasp market trends and trading opportunities, thereby achieving a more robust and efficient trading strategy.
🏃Step 6: Validating the performance of the Bitcoin 5A Strategy
📖Model interpretability validation: How to explain the Bitcoin price model?
The interpretability of the model is represented by the coefficient of determination R squared, which reflects the degree of match between the predicted value and the actual value. I divided all the historical data from August 18, 2015 into two groups, and used the data from August 18, 2011 to August 18, 2015 as training data to generate the model. The calculation result shows that the coefficient of determination R squared during the 2011-2015 training period is as high as 0.81, which shows that the interpretability of this model is quite high. From the Bitcoin price logarithmic prediction chart in the figure below, we can see that the deviation between the predicted value and the actual value is not far, which means that most of the predicted values can explain the actual value well.
The calculation formula for the coefficient of determination R squared is as follows:
residual = btc_close_log - btc_predicted_price_log
residual_square = residual * residual
train_residual_square_sum = math.sum(residual_square, train_days)
train_mse = train_residual_square_sum / train_days
train_r2 = 1 - train_mse / ta.variance(btc_close_log, train_days)
📖Model stability verification: How to affirm the stability of the Bitcoin price model when new data is available?
Model stability is achieved through model verification. I set the last day of the training period to February 2, 2024 as the "verification group" and used it as verification data to verify the stability of the model. This means that after generating the model if there is new data, I will use these new data together with the model for prediction, and then evaluate the interpretability of the model. If the coefficient of determination when using verification data is close to the previous training one and both remain at a high level, then we can consider this model as stability. The coefficient of determination calculated from the validation period data and model prediction results is as high as 0.83, which is close to the previous 0.81, further proving the stability of this model.
📖Performance evaluation: How to accurately evaluate historical backtesting results?
After detailed strategy testing, to ensure the accuracy and reliability of the results, we need to carry out a detailed performance evaluation on the backtest results. The key evaluation indices include:
• Net value curve: As shown in the rose line, it intuitively reflects the growth of the account net value. By observing the net value curve, we can understand the overall performance and profitability of the strategy.
The basic attributes of this strategy are as follows:
Trading range: 2015-8-19 to 2024-2-18, backtest range: 2011-8-18 to 2024-2-18
Initial capital: 1000USD, order size: 1 contract, pyramid: 50 orders, commission rate: 0.2%, slippage: 20 markers.
In the strategy tester overview chart, we also obtained the following key data:
• Net profit rate of closed trades: as high as 474 times, far exceeding the benchmark, as shown in the strategy tester performance summary chart, Bitcoin buys and holds 210 times.
• Number of closed trades and winning percentage: 100 trades were all profitable, showing the stability and reliability of the strategy.
• Drawdown rate & win-loose ratio: The maximum drawdown rate is only 11%, far lower than Bitcoin's 78%. Profit factor, or win-loose ratio, reached 500, further proving the advantage of the strategy.
Through these detailed evaluations, we can see clearly the excellent balance between risk and return of the Bitcoin 5A strategy.
⚠️Usage Restrictions: Strategy Application in Specific Situations
Please note that this strategy is designed specifically for Bitcoin and should not be applied to other assets or markets without authorization. In actual operations, we should make careful decisions according to our risk tolerance and investment goals.
Bitcoin 5A Strategy - Price Upper & Lower Limit@LilibtcIn our long-term strategy, we have deeply explored the key factors influencing the price of Bitcoin. By precisely calculating the correlation between these factors and the price of Bitcoin, we found that they are closely linked to the value of Bitcoin. To more effectively predict the fair price of Bitcoin, we have built a predictive model and adjusted our investment strategy accordingly based on this model. In practice, the prediction results of this model correspond quite high with actual values, fully demonstrating its reliability in predicting price fluctuations.
When the future is uncertain and the outlook is unclear, people often choose to hold back and avoid risks, or even abandon their original plans. However, the prediction of Bitcoin is full of challenges, but we have taken the first step in exploring.
Table of contents:
Usage Guide
Step 1: Identify the factors that have the greatest impact on Bitcoin price
Step 2: Build a Bitcoin price prediction model
Step 3: Find indicators for warning of bear market bottoms and bull market tops
Step 4: Predict Bitcoin Price in 2025
Step 5: Develop a Bitcoin 5A strategy
Step 6: Verify the performance of the Bitcoin 5A strategy
Usage Restrictions
🦮Usage Guide:
1. On the main interface, modify the code, find the BTCUSD trading pair, and select the BITSTAMP exchange for trading.
2. Set the time period to the daily chart.
3. Select a logarithmic chart in the chart type to better identify price trends.
4. In the strategy settings, adjust the options according to personal needs, including language, display indicators, display strategies, display performance, display optimizations, sell alerts, buy prompts, opening days, backtesting start year, backtesting start month, and backtesting start date.
🏃Step 1: Identify the factors that have the greatest impact on Bitcoin price
📖Correlation Coefficient: A mathematical concept for measuring influence
In order to predict the price trend of Bitcoin, we need to delve into the factors that have the greatest impact on its price. These factors or variables can be expressed in mathematical or statistical correlation coefficients. The correlation coefficient is an indicator of the degree of association between two variables, ranging from -1 to 1. A value of 1 indicates a perfect positive correlation, while a value of -1 indicates a perfect negative correlation.
For example, if the price of corn rises, the price of live pigs usually rises accordingly, because corn is the main feed source for pig breeding. In this case, the correlation coefficient between corn and live pig prices is approximately 0.3. This means that corn is a factor affecting the price of live pigs. On the other hand, if a shooter's performance improves while another shooter's performance deteriorates due to increased psychological pressure, we can say that the former is a factor affecting the latter's performance.
Therefore, in order to identify the factors that have the greatest impact on the price of Bitcoin, we need to find the factors with the highest correlation coefficients with the price of Bitcoin. If, through the analysis of the correlation between the price of Bitcoin and the data on the chain, we find that a certain data factor on the chain has the highest correlation coefficient with the price of Bitcoin, then this data factor on the chain can be identified as the factor that has the greatest impact on the price of Bitcoin. Through calculation, we found that the 🔵 number of Bitcoin blocks is one of the factors that has the greatest impact on the price of Bitcoin. From historical data, it can be clearly seen that the growth rate of the 🔵 number of Bitcoin blocks is basically consistent with the movement direction of the price of Bitcoin. By analyzing the past ten years of data, we obtained a daily correlation coefficient of 0.93 between the number of Bitcoin blocks and the price of Bitcoin.
🏃Step 2: Build a Bitcoin price prediction model
📖Predictive Model: What formula is used to predict the price of Bitcoin?
Among various prediction models, the linear function is the preferred model due to its high accuracy. Take the standard weight as an example, its linear function graph is a straight line, which is why we choose the linear function model. However, the growth rate of the price of Bitcoin and the number of blocks is extremely fast, which does not conform to the characteristics of the linear function. Therefore, in order to make them more in line with the characteristics of the linear function, we first take the logarithm of both. By observing the logarithmic graph of the price of Bitcoin and the number of blocks, we can find that after the logarithm transformation, the two are more in line with the characteristics of the linear function. Based on this feature, we choose the linear regression model to establish the prediction model.
From the graph below, we can see that the actual red and green K-line fluctuates around the predicted blue and 🟢green line. These predicted values are based on fundamental factors of Bitcoin, which support its value and reflect its reasonable value. This picture is consistent with the theory proposed by Marx in "Das Kapital" that "prices fluctuate around values."
The predicted logarithm of the market cap of Bitcoin is calculated through the model. The specific calculation formula of the Bitcoin price prediction value is as follows:
btc_predicted_marketcap = math.exp(btc_predicted_marketcap_log)
btc_predicted_price = btc_predicted_marketcap / btc_supply
🏃Step 3: Find indicators for early warning of bear market bottoms and bull market tops
📖Warning Indicator: How to Determine Whether the Bitcoin Price has Reached the Bear Market Bottom or the Bull Market Top?
By observing the Bitcoin price logarithmic prediction chart mentioned above, we notice that the actual price often falls below the predicted value at the bottom of a bear market; during the peak of a bull market, the actual price exceeds the predicted price. This pattern indicates that the deviation between the actual price and the predicted price can serve as an early warning signal. When the 🔴 Bitcoin price deviation is very low, as shown by the chart with 🟩green background, it usually means that we are at the bottom of the bear market; Conversely, when the 🔴 Bitcoin price deviation is very high, the chart with a 🟥red background indicates that we are at the peak of the bull market.
This pattern has been validated through six bull and bear markets, and the deviation value indeed serves as an early warning signal, which can be used as an important reference for us to judge market trends.
🏃Step 4:Predict Bitcoin Price in 2025
📖Price Upper Limit
According to the data calculated on March 10, 2023(If you want to check latest data, please contact with author), the 🟠upper limit of the Bitcoin price is $132,453, which is the price ceiling of this bull market. The peak of the last bull market was on November 9, 2021, at $68,664. The bull-bear market cycle is 4 years, so the highest point of this bull market is expected in 2025, and the 🟠upper limit of the Bitcoin price will exceed $130,000. The closing price of Bitcoin on March 10, 2024, was $68,515, with an expected increase of 90%.
🏃Step 5: Bitcoin 5A Strategy Formulation
📖Strategy: When to buy or sell, and how many to choose?
We introduce the Bitcoin 5A strategy. This strategy requires us to generate trading signals based on the critical values of the warning indicators, simulate the trades, and collect performance data for evaluation. In the Bitcoin 5A strategy, there are three key parameters: buying warning indicator, batch trading days, and selling warning indicator. Batch trading days are set to ensure that we can make purchases in batches after the trading signal is sent, thus buying at a lower price, selling at a higher price, and reducing the trading impact cost.
In order to find the optimal warning indicator critical value and batch trading days, we need to adjust these parameters repeatedly and perform backtesting. Backtesting is a method established by observing historical data, which can help us better understand market trends and trading opportunities.
Specifically, we can find the key trading points by watching the Bitcoin price log and the Bitcoin price deviation chart. For example, on August 25, 2015, the 🔴 Bitcoin price deviation was at its lowest value of -1.11; on December 17, 2017, the 🔴 Bitcoin price deviation was at its highest value at the time, 1.69; on March 16, 2020, the 🔴 Bitcoin price deviation was at its lowest value at the time, -0.91; on March 13, 2021, the 🔴 Bitcoin price deviation was at its highest value at the time, 1.1; on December 31, 2022, the 🔴 Bitcoin price deviation was at its lowest value at the time, -1.
To ensure that all five key trading points generate trading signals, we set the warning indicator Bitcoin price deviation to the larger of the three lowest values, -0.9, and the smallest of the two highest values, 1. Then, we buy when the warning indicator Bitcoin price deviation is below -0.9, and sell when it is above 1.
In addition, we set the batch trading days as 25 days to implement a strategy that averages purchases and sales. Within these 25 days, we will invest all funds into the market evenly, buying once a day. At the same time, we also sell positions at the same pace, selling once a day.
📖Adjusting the threshold: a key step to optimizing trading strategy
Adjusting the threshold is an indispensable step for better performance. Here are some suggestions for adjusting the batch trading days and critical values of warning indicators:
• Batch trading days: Try different days like 25 to see how it affects overall performance.
• Buy and sell critical values for warning indicators: iteratively fine-tune the buy threshold value of -0.9 and the sell threshold value of 1 exhaustively to find the best combination of threshold values.
Through such careful adjustments, we may find an optimized approach with a lower maximum drawdown rate (e.g., 11%) and a higher cumulative return rate for closed trades (e.g., 474 times). The chart below is a backtest optimization chart for the Bitcoin 5A strategy, providing an intuitive display of strategy adjustments and optimizations.
In this way, we can better grasp market trends and trading opportunities, thereby achieving a more robust and efficient trading strategy.
🏃Step 6: Validating the performance of the Bitcoin 5A Strategy
📖Model accuracy validation: How to judge the accuracy of the Bitcoin price model?
The accuracy of the model is represented by the coefficient of determination R square, which reflects the degree of match between the predicted value and the actual value. I divided all the historical data from August 18, 2015 into two groups, and used the data from August 18, 2011 to August 18, 2015 as training data to generate the model. The calculation result shows that the coefficient of determination R squared during the 2011-2015 training period is as high as 0.81, which shows that the accuracy of this model is quite high. From the Bitcoin price logarithmic prediction chart in the figure below, we can see that the deviation between the predicted value and the actual value is not far, which means that most of the predicted values can explain the actual value well.
The calculation formula for the coefficient of determination R square is as follows:
residual = btc_close_log - btc_predicted_price_log
residual_square = residual * residual
train_residual_square_sum = math.sum(residual_square, train_days)
train_mse = train_residual_square_sum / train_days
train_r2 = 1 - train_mse / ta.variance(btc_close_log, train_days)
📖Model reliability verification: How to affirm the reliability of the Bitcoin price model when new data is available?
Model reliability is achieved through model verification. I set the last day of the training period to February 2, 2024 as the "verification group" and used it as verification data to verify the reliability of the model. This means that after generating the model if there is new data, I will use these new data together with the model for prediction, and then evaluate the accuracy of the model. If the coefficient of determination when using verification data is close to the previous training one and both remain at a high level, then we can consider this model as reliable. The coefficient of determination calculated from the validation period data and model prediction results is as high as 0.83, which is close to the previous 0.81, further proving the reliability of this model.
📖Performance evaluation: How to accurately evaluate historical backtesting results?
After detailed strategy testing, to ensure the accuracy and reliability of the results, we need to carry out a detailed performance evaluation on the backtest results. The key evaluation indices include:
• Net value curve: As shown in the rose line, it intuitively reflects the growth of the account net value. By observing the net value curve, we can understand the overall performance and profitability of the strategy.
The basic attributes of this strategy are as follows:
Trading range: 2015-8-19 to 2024-2-18, backtest range: 2011-8-18 to 2024-2-18
Initial capital: 1000USD, order size: 1 contract, pyramid: 50 orders, commission rate: 0.2%, slippage: 20 markers.
In the strategy tester overview chart, we also obtained the following key data:
• Net profit rate of closed trades: as high as 474 times, far exceeding the benchmark, as shown in the strategy tester performance summary chart, Bitcoin buys and holds 210 times.
• Number of closed trades and winning percentage: 100 trades were all profitable, showing the stability and reliability of the strategy.
• Drawdown rate & win-loose ratio: The maximum drawdown rate is only 11%, far lower than Bitcoin's 78%. Profit factor, or win-loose ratio, reached 500, further proving the advantage of the strategy.
Through these detailed evaluations, we can see clearly the excellent balance between risk and return of the Bitcoin 5A strategy.
⚠️Usage Restrictions: Strategy Application in Specific Situations
Please note that this strategy is designed specifically for Bitcoin and should not be applied to other assets or markets without authorization. In actual operations, we should make careful decisions according to our risk tolerance and investment goals.
Gradient Candles
The Gradient Candles indicator is crafted to be a comprehensive replacement for default candlesticks, offering users an enhanced and visually stunning alternative. To experience the intended results and fully immerse in the distinctive features of Gradient Candles, it's recommended to hide the default candlesticks. This ensures that traders can fully appreciate the unique color gradient and dynamic visual representation that this indicator brings to chart analysis.
Designed to elevate chart analysis, Gradient Candles not only offer a fresh perspective on price movements but also captivate users with their visually appealing representation of market dynamics. Departing from traditional candlestick coloration, the dynamic adaptation of colors, the 'color.from_gradient()' function plays a pivotal role in translating the current source value into a color that reflects its proximity to the highest and lowest values and corresponding colors. Beyond its analytical capabilities, Gradient Candles transform market analysis into an aesthetically enriching experience, providing traders with a unique and comprehensive tool for their technical analysis toolkit.
Traders can tailor the indicator's appearance to suit their preferences and seamlessly integrate it into their personal trading environment. From color inversion to transparency adjustments and the option to fill candles instead of outlining them, the customization features empower users to create a visual representation that aligns precisely with their unique preferences.
TMS By TradeINskiTMS (Trade Management System) By TradeINski
First Things First
- Disclaimer: This indicator will not give any buy or sell signal this is just a supporting tool to improve efficiency in my trading.
- Apply Indicators and then open indicator settings and read the following simultaneously to understand better.
- Default color settings are best suited for light themes. Which is also my personal preference.
Users can change most of the default options in settings according to their personal preference in settings.
- When we open settings we can see 3 tabs that are {Inputs tab} {Style tab} {Visibility tab} each tab have its own options, Understand and use it accordingly.
- Background Color grading that is “Green” background means parameter favorable, “Red” not favorable for my trading, “Nah” and black means no sufficient data for calculation especially IPO stocks and other colors are not just for color grading but also have some significance.
Indicator will be only visible in the intraday time frame as its primary TF is lower time frame.
Contents
Table - Trade Management System
Capital
Risk (%)
Stop Loss (%)
RQBC - Real Time Quantity Based On PDC
%DC - Distance From PDC
RQBL - Real Time Quantity Based On LOD
%DL / %DH - Distance From LOD/ HOD
R_VOL
Markers - Intraday levels
Q - Quantity Based on SL
QL - Quantity Based On LOD
E @ - Entry % Distance From PDC
L1 - Line 1 % Distance From PDC
L2 - Line 2 % Distance From PDC
Low of the Day
Table - Trade Management System
Capital
- Capital is nothing but your account size in number. Default value is 1000000.
- Eg. Capital is 10L then enter 1000000.
{Input Tab}
- “Check Mark” Users can show or hide from the table.
- “Capital” Default “1000000”.
- Color Code of the cell is the default Blue color.
- Note - If Currency is INR then output is in Cr’s and other currency is in thousands K & M for millions.
Risk (%)
- Risk in percentage is the percentage of risk per trade you're willing to take from the deployed capital. Default 0.50%.
- Eg. 10L capital 0.5% Risk (%) ie. 5000 is the risk per trade.
{Input Tab}
- “Check Mark” Users can show or hide from the table.
- “Risk (%)” Default “0.50”.
- Color Code of the cell is the default Blue color.
Stop Loss (%)
- Percentage stop loss willing to take or decided for each specific trade from enter level. Default value is 2%
- Eg. Planned SL for specific trade is 2%.
{Input Tab}
- “Check Mark” Users can show or hide intraday markers.
- “Stop Loss (%)” Default “2%”.
- “Color” Users can change as per their preference. Default color is Red.
RQBC - Real Time Quantity Based On PDC (Previous Day Close)
- Here quantity is calculated real time based on four factors i.e account size, risk (%) and current close and with respect to previous day close. This helps in deciding ideal position size quickly.
- Eg. RQBC is 10 as per Account size, Risk (%), Current close and with respect to Previous day close.
{Input Tab}
- “Check Mark” Users can show or hide from the table.
- “RQBC - Real Time Quantity Based On PDC”. Color code of the cell changes as per % change of the stock i.e Green & Red accordingly.
%DC - Distance From PDC (Previous Day Close)
- This is exact same logic as % change ie. based on two factors which are the previous day close and current close and then % change or move is calculated.
- Eg. Stock has moved 3.5% ie. % change is 3.5%
{Input Tab}
- “Check Mark” Users can show or hide from the table.
- “%DC - Distance from PDC”. Color code of the cell changes as per % change of the stock i.e Green & Red accordingly.
RQBL - Real Time Quantity Based On LOD (Low of the Day)
- Here quantity is calculated realtime based on four factors i.e account size, risk (%) and current close with respect to the low of the day that is today's low. This helps in deciding ideal position size based on the current low of the day quickly.
- Eg. Stock has moved 2.7% from the low of the day which most of the time differs from %DC that is % change.
{Input Tab}
- “Check Mark” Users can show or hide from the table.
- “RQBL - Real Time Quantity Based On LOD”. Color code of the cell changes as per %Change of the stock i.e Green & Red accordingly.
%DL / %DH - Distance From LOD (Low Of The Day) / HOD (High Of The Day)
- This is similar to % change but based on two factors which are the low of the day and current close for %DL that is when %change is positive and when % change is negative %DH is calculated based on current close and high of the day. In both cases, % move is calculated.
- Eg. Stock has moved 3.5% from low of the day then its %DL and for %DH vice versa considering high of the day.
{Input Tab}
- “Check Mark” Users can show or hide from the table.
- “%DL / %DH - Distance from LOD / HOD”. Color code of the cell changes as per % change of the stock i.e Green & Red accordingly.
R_VOL - Relative Volume
- Value shown in terms of percentage, Is how much volume is present today with respect to average volume and average volume period is 50.
- Eg. If R_VOL is less than 100% that means specific day volume is less than average volume and if RVOL is more than average volume then specific day volume is more than average volume.
{Inputs Tab}
- “Check Mark” Users can show or hide from the table.
- “R_VOL” Period “50” - Users have the option to choose accordingly.
- “Op” Means output “Drop down” User can choose between complete & Percentage only Play around to notice the difference.
{Note}
- The Following settings for the complete table.
- Position “Drop Down”. Users can choose accordingly.
- Size “Drop Down”. Users can choose accordingly.
MARKER - INTRADAY LEVELS
{Note}
- The Following settings are for all the intraday markers .
- “Line Type” “Drop Down”. Users can choose accordingly.
- Width ”↕” “1”. Mini = 1 & Max = 4. Users can choose accordingly.
- Label Size “Drop Down”. Users can choose accordingly.
Q - Quantity Based On SL (Stop Loss)
- Here Quantity is calculated based on four factors and marked on an intraday time frame and those factors are capital, Risk (%), Stop loss (%) and E @ ie. Entry level. Objective is based on different factors determining ideal position size quickly.
- Eg. Q is 25 based on capital, Risk(%), Stop loss (%) & Entry (%) Ie E @.
{Inputs Tab}
“Check Mark” Users can show or hide intraday markers.
“Q - Quantity Based On SL”. Color of the marker can be changed from the color settings of E @.
{Output}
- “Q - 25” is marked on E @ - Entry % Distance From PDC.
- Marker is colored green by default.
QL - Quantity Based On LOD (Low Of The Day)
- Here Quantity is calculated based on four factors and marked on an intraday time frame and those factors are capital, Risk (%), LOD ie. low of the day and E @ ie. Entry level. Objective is based on different factors determining ideal position size.
- Eg. Q is 25 based on capital, Risk(%), LOD & Entry (%) Ie E @.
{Inputs Tab}
- “Check Mark” Users can show or hide intraday markers.
- “Q - Quantity Based On LOD”. Color of the marker can be changed from the color settings of E @.
{Output}
- “QL - 25” is marked on E @ - Entry %Distance From PDC.
- Marker is colored green by default.
E @ - Entry % Distance From PDC (Previous Day Close)
- Here Entry Price Level is determined and marked, that is how far from previous day close in percentage that is nothing but saying after how much % change you're willing to enter.
- Eg. Enter after 2% Move then the marker shows its price along with “Q” & “QL”.
{Inputs Tab}
- “Check Mark” Users can show or hide intraday markers.
- E - Entry % Distance From PDC.
- “E @ - Entry (%)” Default “2”. Users have the option to change accordingly.
- “Green Color”. Users can choose as per their preference.
{Output}
- “E @ ” “Default 2%” : “Price” / “Q - ” Calculated Quantity based on SL / “QL - “ Calculated quantity based on LOD. Green Color Label.
L1 - Line 1 % DIstance from PDC (Previous Day Close)
- Here Line 1 is the level which is determined by how far from previous day close in percentage that is nothing but saying at what % change the marker should be shown. This acts as a visual support level. Logic is in the live market the price is nearing the entry level and be vigilant to take action.
- Eg. Support level is 1.5% that is 1.5% away from PDC.
{Inputs Tab}
- “Check Mark” Users can show or hide intraday markers.
- L1 - Line 1 % Distance From PDC.
- “L1 - Line 1 (%)” Default “1.5”. Users have the option to change accordingly.
- “Gray Color”. Users can choose as per their preference.
{Output}
- “L1” “Default 1.5%” : “Price”. Gray Color label.
L2 - Line 2 % Distance from PDC (Previous Day Close)
- Here Line 2 is the level which is determined by how far from previous day close in percentage that is nothing but saying at what % change the marker should be shown. This acts as a visual support level. Logic is in the live market the price is nearing the entry level and be vigilant to take action.
- Eg. Support level is 1% that is 1% away from PDC.
{Inputs Tab}
- “Check Mark” Users can show or hide intraday markers.
- L2 - Line 2 % Distance From PDC.
- “L2 - Line 2 (%)” Default “1.5”. Users have the option to change accordingly.
- “Gray Color”. Users can choose as per their preference.
{Output}
- “L2” “Default 1%” : “Price”. Gray Color label.
Low Of The Day
- Here the current low of the day is marked and its price is shown in the intraday label.
Eg. Stock low of the day is 100 then it marks 100.
{Inputs Tab}
- “Check Mark” Users can show or hide intraday markers.
- Low Of the Day
- “Fuchsia Color”. Users can choose as per their preference.
{Output}
- “LOD” : “Price”. Fuchsia Color label.
Trend Deviation strategy - BTC [IkkeOmar]Intro:
This is an example if anyone needs a push to get started with making strategies in pine script. This is an example on BTC, obviously it isn't a good strategy, and I wouldn't share my own good strategies because of alpha decay.
This strategy integrates several technical indicators to determine market trends and potential trade setups. These indicators include:
Directional Movement Index (DMI)
Bollinger Bands (BB)
Schaff Trend Cycle (STC)
Moving Average Convergence Divergence (MACD)
Momentum Indicator
Aroon Indicator
Supertrend Indicator
Relative Strength Index (RSI)
Exponential Moving Average (EMA)
Volume Weighted Average Price (VWAP)
It's crucial for you guys to understand the strengths and weaknesses of each indicator and identify synergies between them to improve the strategy's effectiveness.
Indicator Settings:
DMI (Directional Movement Index):
Length: This parameter determines the number of bars used in calculating the DMI. A higher length may provide smoother results but might lag behind the actual price action.
Bollinger Bands:
Length: This parameter specifies the number of bars used to calculate the moving average for the Bollinger Bands. A longer length results in a smoother average but might lag behind the price action.
Multiplier: The multiplier determines the width of the Bollinger Bands. It scales the standard deviation of the price data. A higher multiplier leads to wider bands, indicating increased volatility, while a lower multiplier results in narrower bands, suggesting decreased volatility.
Schaff Trend Cycle (STC):
Length: This parameter defines the length of the STC calculation. A longer length may result in smoother but slower-moving signals.
Fast Length: Specifies the length of the fast moving average component in the STC calculation.
Slow Length: Specifies the length of the slow moving average component in the STC calculation.
MACD (Moving Average Convergence Divergence):
Fast Length: Determines the number of bars used to calculate the fast EMA (Exponential Moving Average) in the MACD.
Slow Length: Specifies the number of bars used to calculate the slow EMA in the MACD.
Signal Length: Defines the number of bars used to calculate the signal line, which is typically an EMA of the MACD line.
Momentum Indicator:
Length: This parameter sets the number of bars over which momentum is calculated. A longer length may provide smoother momentum readings but might lag behind significant price changes.
Aroon Indicator:
Length: Specifies the number of bars over which the Aroon indicator calculates its values. A longer length may result in smoother Aroon readings but might lag behind significant market movements.
Supertrend Indicator:
Trendline Length: Determines the length of the period used in the Supertrend calculation. A longer length results in a smoother trendline but might lag behind recent price changes.
Trendline Factor: Specifies the multiplier used in calculating the trendline. It affects the sensitivity of the indicator to price changes.
RSI (Relative Strength Index):
Length: This parameter sets the number of bars over which RSI calculates its values. A longer length may result in smoother RSI readings but might lag behind significant price changes.
EMA (Exponential Moving Average):
Fast EMA: Specifies the number of bars used to calculate the fast EMA. A shorter period results in a more responsive EMA to recent price changes.
Slow EMA: Determines the number of bars used to calculate the slow EMA. A longer period results in a smoother EMA but might lag behind recent price changes.
VWAP (Volume Weighted Average Price):
Default settings are typically used for VWAP calculations, which consider the volume traded at each price level over a specific period. This indicator provides insights into the average price weighted by trading volume.
backtest range and rules:
You can specify the start date for backtesting purposes.
You can can select the desired trade direction: Long, Short, or Both.
Entry and Exit Conditions:
LONG:
DMI Cross Up: The Directional Movement Index (DMI) indicates a bullish trend when the positive directional movement (+DI) crosses above the negative directional movement (-DI).
Bollinger Bands (BB): The price is below the upper Bollinger Band, indicating a potential reversal from the upper band.
Momentum Indicator: Momentum is positive, suggesting increasing buying pressure.
MACD (Moving Average Convergence Divergence): The MACD line is above the signal line, indicating bullish momentum.
Supertrend Indicator: The Supertrend indicator signals an uptrend.
Schaff Trend Cycle (STC): The STC indicates a bullish trend.
Aroon Indicator: The Aroon indicator signals a bullish trend or crossover.
When all these conditions are met simultaneously, the strategy considers it a favorable opportunity to enter a long trade.
SHORT:
DMI Cross Down: The Directional Movement Index (DMI) indicates a bearish trend when the negative directional movement (-DI) crosses above the positive directional movement (+DI).
Bollinger Bands (BB): The price is above the lower Bollinger Band, suggesting a potential reversal from the lower band.
Momentum Indicator: Momentum is negative, indicating increasing selling pressure.
MACD (Moving Average Convergence Divergence): The MACD line is below the signal line, signaling bearish momentum.
Supertrend Indicator: The Supertrend indicator signals a downtrend.
Schaff Trend Cycle (STC): The STC indicates a bearish trend.
Aroon Indicator: The Aroon indicator signals a bearish trend or crossover.
When all these conditions align, the strategy considers it an opportune moment to enter a short trade.
Disclaimer:
THIS ISN'T AN OPTIMAL STRATEGY AT ALL! It was just an old project from when I started learning pine script!
The backtest doesn't promise the same results in the future, always do both in-sample and out-of-sample testing when backtesting a strategy. And make sure you forward test it as well before implementing it!
Furthermore this strategy uses both trend and mean-reversion systems, that is usually a no-go if you want to build robust trend systems .
Don't hesitate to comment if you have any questions or if you have some good notes for a beginner.
Aroon and ASH strategy - ETHERIUM [IkkeOmar]Intro:
This post introduces a Pine Script strategy, as an example if anyone needs a push to get started. This example is a strategy on ETH, obviously it isn't a good strategy, and I wouldn't share my own good strategies because of alpha decay. This strategy combines two technical indicators: Aroon and Absolute Strength Histogram (ASH).
Overview:
The strategy employs the Aroon indicator alongside the Absolute Strength Histogram (ASH) to determine market trends and potential trade setups. Aroon helps identify the strength and direction of a trend, while ASH provides insights into the strength of momentum. By combining these indicators, the strategy aims to capture profitable trading opportunities in Ethereum markets. Normally when developing strats using indicators, you want to find some good indicators, but you NEED to understand their strengths and weaknesses, other indicators can be incorporated to minimize the downs of another indicator. Try to look for synergy in your indicators!
Indicator settings:
Aroon Indicator:
- Two sets of parameters are used for the Aroon indicator:
- For Long Positions: Aroon periods are set to 56 (upper) and 20 (lower).
- For Short Positions: Aroon periods are set to 17 (upper) and 55 (lower).
Absolute Strength Histogram (ASH):
ASH is calculated with a length of 9 bars using the closing price as the data source.
Trading Conditions:
The strategy incorporates specific conditions to initiate and exit trades:
Start Date:
Traders can specify the start date for backtesting purposes.
Trade Direction:
Traders can select the desired trade direction: Long, Short, or Both.
Entry and Exit Conditions:
1. Long Position Entry: A long position is initiated when the Aroon indicator crosses over (crossover) the lower Aroon threshold, indicating a potential uptrend.
2. Long Position Exit: A long position is closed when the Aroon indicator crosses under (crossunder) the lower Aroon threshold.
3. Short Position Entry: A short position is initiated when the Aroon indicator crosses under (crossunder) the upper Aroon threshold, signaling a potential downtrend.
4. Short Position Exit: A short position is closed when the Aroon indicator crosses over (crossover) the upper Aroon threshold.
Disclaimer:
THIS ISN'T AN OPTIMAL STRATEGY AT ALL! It was just an old project from when I started learning pine script!
The backtest doesn't promise the same results in the future, always do both in-sample and out-of-sample testing when backtesting a strategy. And make sure you forward test it as well before implementing it!
[KVA] Custom Sessions Custom Sessions: Multi-Timeframe Analysis & Key Level Insights
Introduction:
Introducing " Custom Sessions," an innovative Pine Script indicator meticulously crafted to empower traders by offering an advanced level of analysis on various global trading sessions. This tool is designed not just to highlight trading sessions but to delve deeper into the nuances of market movements by analyzing candlestick behavior within those sessions, offering a nuanced view of market trends, liquidity, and potential turning points.
Core Features :
Session Customization : Tailor trading sessions to align with your strategy, focusing on the markets that matter most to you. Whether it's London, New York, Tokyo, Sydney, or Frankfurt, you have the control.
Enhanced Market Insight : Beyond session timing, gain a refined understanding of market dynamics through detailed candlestick analysis within each session, providing a granular view of price action.
Comprehensive Analysis Tools : Alongside session analysis, the indicator includes features like VWAP (Volume Weighted Average Price) and Fibonacci retracement levels, offering a multifaceted approach to market analysis across chosen timeframes.
VWAP : Gain insights into the market's trend and liquidity by viewing the Volume Weighted Average Price calculated for the custom timeframe.
Fibonacci Retracement Levels : Easily identify potential reversal points with automatically plotted Fibonacci levels at 0.236, 0.382, 0.5, 0.618, and 0.782for each candle
Real-Time Updates : As the market moves, so does " Custom Sessions," offering real-time insights that adapt to the unfolding market conditions.
Utilization Guide :
Configure Your Sessions : Begin by setting up the sessions that are most relevant to your trading approach, customizing their times as needed.
Select the Desired Timeframe : Input your preferred higher timeframe to analyze data that is most relevant to your trading strategy.
Dive into the Details : Use the detailed candlestick analysis within sessions to pinpoint potential entry and exit points, supported by VWAP and Fibonacci levels for deeper market insight.
Customize Your View : Adjust the visual aspects of the indicator, including session color coding and which elements to display, tailoring the tool to your preferences.
Acknowledgements :
A special thanks to Aurocks_AIF for their foundational work on "Sessions on Chart" . This project has been an invaluable resource, inspiring the development of " Custom Sessions" and pushing the boundaries of traditional session analysis.
Final Thoughts :
" Custom Sessions" is more than just an indicator; it's a comprehensive analysis tool that brings a new depth to the understanding of market sessions. By offering detailed insights into the behavior of candles within these sessions, along with essential analysis features, this indicator is a must-have for traders seeking to enhance their technical analysis arsenal.
Whether you're a day trader looking to capture short-term movements or a long-term investor seeking broader market insights, this indicator offers valuable data visualization to enhance your trading decisions. By integrating highs, lows, VWAP, and Fibonacci levels into your analysis, you gain a comprehensive view of market behavior across different timeframes and sessions
Daily Chess Puzzles [LuxAlgo]Play Chess Puzzles right on your Chart!
Daily Chess Puzzles brings you a new 1-Move chess puzzle straight to your chart every day.
🔶 USAGE
Submit your answer to see if your solution is correct! For quick access to the settings, Double-Click on the Chess board to open the settings interface.
The current active color (Who's move it is) is represented by the color of the information bar, and the corner board squares.
This game uses long algebraic notation without pieces names for submitting moves.
This method for determining moves is perfect for simplicity and clarity, and is standard for the Universal Chess Interface (UCI).
🔹 How to Notate
Long algebraic notation (without pieces name) is simple to understand. This notation does not use capture symbols or check/checkmate symbols; it uses only the squares involved in the move and any promotion occurring.
{Starting Square}{Ending Square}{Promotion Piece(if needed)}
Locate the starting square and the ending square of the piece being moved, without mentioning the piece itself.
Identify the column letters (a-h) and row numbers (1-8) that align with your desired move.
If a pawn reaches the opposite end of the board the pawn gets promoted, add the letter representing the piece it is promoted to at the end of the move.
Put it all together and you've got your notation!
Piece Notations for Pawn Promotions:
'n' for Knight ('k' is reserved for the King in chess notation)
'b' for Bishop
'r' for Rook
'q' for Queen
Normal Move Example: Moving a piece from e2 to e4 is notated as "e2e4".
Pawn Promotion Example: Promoting a pawn to a queen is notated as "e7e8q".
🔶 DETAILS
Miss a day? Yesterday's puzzle can be re-played, check the box for 'View Yesterday's Puzzle' in the settings.
This indicator makes use of Tooltips! . Hover over a square to see that square's notation.
This script makes use of 5 libraries, each storing 2 years worth of daily chess puzzles amounting to 10 years of unique daily chess puzzles.
"timenow" is used to determine which day it is, so even on a closed ticker or weekend or holiday a new chess puzzle will be displayed.
Users have the option to choose from 5 different board themes.
Unbiased Replay CompanionWhen using bar replay mode on TradingView, you have to scroll your way back through clearly visible price history, which always leaves you with unwanted lookahead bias because you unfortunately see all future price movements before they are hidden by the use of the scissors tool.
This indicator provides a simple way to hide all the price action and displays a configurable bar counter instead, allowing you to scroll back to every moment in history without seeing any of the prices' movements. The bar counter hereby serves as a visual aid to guide you back to the very first available bar on the chart.
You can configure the color of the overlay to match your charts' background as well as the style of the bar counter and the distance at which the counter is being displayed.
The indicator crops the vertical price scale by a random amount (only when it is being displayed) to also prevent you from having any unwanted bias based on the current price range.
Whenever you're done scrolling and have used the replay scissors tool to start your session just hide the indicator and bring it up again when you need to scroll. That's all there is to it.
Important: After you apply the indicator to your charts, make sure it is displayed in front of everything else. You can configure this by clicking on the three dots that are displayed on the right side of the indicator name on hover and choose "Visual order > Bring to front" from the popup menu that appears.
Enjoy your unbiased backtesting sessions!
Word PuzzleWord Puzzle is a PineScript-based clone of the popular daily puzzle game called "Wordle".
It is not identical, but the general gameplay is the same.
>How It works (The Game)
A secret word (also referred to as the "target word") is randomly selected from a database of 5 Letter words.
The player/user's goal is to guess that word within 6 attempts.
After each guess, the script provides information to the user by color coding the letters of their guess.
Green (Known Letters): These letters are in the exact spot that they occur in the target word.
Yellow (Included Letters): These letters are included in the target word; however, the user does not have them in the correct position.
Gray (Un-used Letters): These letters do not occur anywhere in the target word
>Interface
On each turn the user will input their 5 letter guess into the "Guess #" box and submit it by checking the check-box next to the word.
If the input word is invalid, the script will prompt you. Invalid words are any words not found within the script's valid word list.
After guess 3, hints may be viewed by hovering over the "Need a Hint" box on the display.
If you are unable to guess the word in the given amount of guesses, the 'Game Over' screen will display, and you will be able to view the answer in the same box as the hints.
To start a new game, clear all inputs and insert a different number into the "Puzzle Seed" input, to have the script randomly select a new word.
NOTE: Word selection based on the seed number is deterministic, the same seed number will always have the same puzzle word.
>Additional Information
The script comes equipped with 5 different themes as seen below.
Table size is also selectable.
This indicator makes use of 'tooltips'.
Hover over the boxes on the table for quick reference information or additional information on prompts.
Since the script randomly selects from the ENTIRE valid word list you are bound to come across some obscure words with strange spellings.
Because of this, I have built in a "quick way out".
To end a game without filling out all guesses, submit the answer "Give Up" to skip to the end screen where you can reveal the puzzle's answer.
Afterwards, take a second to look up the definition! Ever heard of a xylyl?!
The code is fully notated. Most of the script involves string management, but there are still some neat tricks in here as well.
Enjoy!
Machine Learning Cross-Validation Split & Batch HighlighterThis indicator is designed for traders and analysts who employ Machine Learning (ML) techniques for cross-validation in financial markets.
The script visually segments a selected range of historical price data into splits and batches, helping in the assessment of model performance over different market conditions.
User
Theory
In ML, cross-validation is a technique to assess the generalizability of a model, typically by partitioning the data into a set of "folds" or "splits." Each split acts as a validation set, while the others form the training set. This script takes a unique approach by considering the sequential nature of financial time series data, where random shuffling of data (as in traditional cross-validation) can disrupt the temporal order, leading to misleading results.
Chronological Integrity of Splits
Even if the order of the splits is shuffled for cross-validation purposes, the data within each split remains in its original chronological sequence. This feature is crucial for time series analysis, as it respects the inherent order-dependency of financial markets. Thus, each split can be considered a microcosm of market behavior, maintaining the integrity of trends, cycles, and patterns that could be disrupted by random sampling.
The script allows users to define the number of splits and the size of each batch within a split. By doing so, it maintains the chronological sequence of the data, ensuring that the validation set is representative of a future time period that the model would predict.
www.tradingview.com
Parameters
Number of Splits: Defines how many segments the selected data range will be divided into. Each split serves as a standalone testing ground for the ML model. (Up to 24)
Batch Size: Determines the number of bars (candles) in each batch within a split. Smaller batches can help pinpoint overfitting at a finer granularity.
Start Index: The bar index from where the historical data range begins. It sets the starting point for data analysis.
End Index: The bar index where the historical data range ends. It marks the cutoff for data to be included in the model assessment.
Usage
To use this script effectively:
1 - Input the Start Index and End Index to define the historical data range you wish to analyze.
2 - Adjust the Number of Splits to create multiple validation sets for cross-validation.
3 - Set the Batch Size to control the granularity of each validation set within the splits.
4 - The script will highlight the background of each batch within the splits using alternating shades, allowing for a clear visual distinction of the data segmentation.
By maintaining the temporal sequence and allowing for adjustable granularity, the "ML Split and Batch Highlighter" aids in creating a robust validation framework for time series forecasting models in finance.
Gamma ExposureOverview :
Gamma is part of the second order of greeks which measure the sensitivity of first order greeks (Delta) to changes in factors of the underlying. Using Gamma, traders can see the potential delta hedging activity by market makers. If market makers are long gamma, they will be buying as price decreases and selling as price increases, which acts as a stabilizing factor on the market. If they are short gamma, they are buying as price increases and selling as price decreases, which can further intensify volatility.
How it works/Calculations :
This indicator will bring the data from an outside source and will calculate Gamma from the Black-Scholes equation. Will take all the open contracts for the underlying and calculate Gamma exposure. A few assumptions will be made that may or may not be true, like making the assumptions that all open contracts were sold by the market maker. Although not perfect, will give an idea of where the market maker will be since the majority will be done by them.
The impact that Gamma has is dependent on different factors, such as open interest, time expiry, and volatility. The more open interest is at a strike that has near- term expiration date, the more likely is that the Gamma exposure will have an impact on the market. Gamma will work as a magnet and pins depending on strong levels.
In the settings, you can choose to see both calls and put Gamma levels or just see the delta, meaning the difference between the calls and the puts. Since this is based on open Interest of the options contracts and those update once a day, this indicator will update once a day as well to give the most current values.
Current equities available for the data :
1. Spx 2. Spy 3. QQQ 4. IWM, 5. AAPL 6. MSFT 7. NVDA 8. AMD 9. V 10. Crm 11. Meta 12. Goog 13. NFLX 14. Amzn 15. Tsla 16. HD 17. Low 18. TGT 19. Wmt 20. XOM 21. Cvx 22. JPM 23. AXP 24. GS 25. ABBV 26. Cat 27. DE 28. BA 29. Fdx 30. UPS 31. Shop 32. SQ 33. Abnb 34. Snow 35. Coin 36. Crwd 37. Uber 38. SBUX 39. ENPH
How to use :
You should not be using this indicator for entries or stop. This indicator will help you see where there are possible levels that will serve as magnets or rejections or where price can be pinned.
Pitfalls :
Gamma is one of the second order greeks, there are other greeks that can also affect movement by the market makers. Time to expiry, volatility and open interest impact gamma. We are calculating all open interest as the market maker being the originator of it. Large and elevated exposure in groups of strikes is more likely to be significant than individual smaller strikes.
Disclaimer:
This is still an indicator that in no way should be used alone.
The information contained in this script 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 are only for educational purposes!
Backtest any Indicator v5Happy Trade,
here you get the opportunity to backtest any of your indicators like a strategy without converting them into a strategy. You can choose to go long or go short and detailed time filters. Further more you can set the take profit and stop loss, initial capital, quantity per trade and set the exchange fees. You get an overall result table and even a detailed, scroll-able table with all trades. In the Image 1 you see the provided info tables about all Trades and the Result Summary. Further more every trade is marked by a background color, Labels and Levels. An opening Label with the trade direction and trade number. A closing Label again with the trade number, the trades profit in % and the total amount of $ after all past trades. A green line for the take profit level and a red line for the stop loss.
Image 1
Example
For this description we choose the Stochastic RSI indicator from TradingView as it is. In Image 2 is shown the performance of it with decent settings.
Timeframe=45, BTCUSD, 2023-08-01 - 2023-10-20
Stoch RSI: k=30, d=40, RSI-length=140, stoch-length=140
Backtest any Indicator: input signal=Stoch RSI, goLong, take profit=9.1%, stop loss=2.5%, start capital=1000$, qty=5%, fee=0.1%, no Session Filter
Image 2
Usage
1) You need to know the name of the boolean (or integer) variable of your indicator which hold the buy condition. Lets say that this boolean variable is called BUY. If this BUY variable is not plotted on the chart you simply add the following code line at the end of your pine script.
For boolean (true/false) BUY variables use this:
plot(BUY ? 1:0,'Your buy condition hold in that variable BUY',display = display.data_window)
And in case your script's BUY variable is an integer or float then use instate the following code line:
plot(BUY ,'Your buy condition hold in that variable BUY',display = display.data_window)
2) Probably the name of this BUY variable in your indicator is not BUY. Simply replace in the code line above the BUY with the name of your script's trade condition variable.
3) Save your changed Indicator script.
4) Then add this 'Backtest any Indicator' script to the chart ...
5) and go to the settings of it. Choose under "Settings -> Buy Signal" your Indicator. So in the example above choose .
The form is usually: ' : BUY'. Then you see something like Image 2
6) Decide which trade direction the BUY signal should trigger. A go Long or a go Short by set the hook or not.
Now you have a backtest of your Indicator without converting it into a strategy. You may change the setting of your Indicator to the best results and setup the following strategy settings like Time- and Session Filter, Stop Loss, Take Profit etc. More of it below in the section Settings Menu.
Appereance
In the Image 2 you see on the right side the List of Trades . To scroll down you go into the settings again and decrease the scroll value. So you can see all trades that have happened before. In case there is an open trade you will find it at the last position of the list.
Every Long trade is green back grounded while Short trades are red.
Every trade begins with a label that show goLong or goShort and its number. And ends with another label again with its number, Profit in % and the resulting total amount of cash.
If activated you further see the Take Profit as a green line and the Stop Loss as a orange line. In the settings you can set their percentage above or below the entry price.
You also see the Result Summary below. Here you find the usual stats of a strategy of all closed trades. The profit after total amount of fees , amount of trades, Profit Factor and the total amount of fees .
Settings Menu
In the settings menu you will find the following high-lighted sections. Most of the settings have a question mark on their right side. Move over it with the cursor to read specific explanation.
Input Signal of your Indicator: Under Buy you set the trade signal of your Indicator. And under Target you set the value when a trade should happen. In the Example with the Stochastic RSI above we used 20. Below you can set the trade direction, let it be go short when hooked or go long when unhooked.
Trade Settings & List of Trades: Take Profit set the target price of any trade. Stop Loss set the price to step out when a trade goes the wrong direction. Check mark the List of Trades to see any single trade with their stats. In case that there are more trades as fits in the list you can scroll down the list by decrease the value Scroll .
Time Filter: You can set a Start Time or deactivate it by leave it unhooked. The same with End Time .
Session Filter: here you can choose to activate it on weekly base. Which days of the week should be trading and those without. And also on daily base from which time on and until trade are possible. Outside of all times and sessions there will be no new trades if activated.
Invest Settings: here you can choose the amount of cash to start with. The Quantity percentage define for every trade how much of the cash should be invested and the Fee percentage which have to be payed every trade. Open position and closing position.
Other Announcements
This Backtest script don't use the strategy functions of TradingView. It is programmed as an indicator. All trades get executed at candle closing. This script use the functionality "Indicator-on-Indicator" from TradingView.
Conclusion
So now it is your turn, take your promising indicators and connect it to that Backtest script. With it you get a fast impression of how successful your indicator will trade. You don't have to relay on coders who maybe add cheating code lines. Further more you can check with the Time Filter under which market condition you indicator perform the best or not so well. Also with the Session Filter you can sort out repeating good market conditions for your indicator. Even you can check with the GoShort XOR GoLong check mark the trade signals of you indicator in opposite trade direction with one click. And compare your indicators under the same conditions and get the results just after 2 clicks. Thanks to the in-build fee setting you get an impression how much a 0.1% fee cost you in total.
Cheers
EMA Crossover Strategy with RSI Filter BIGTIME 5mThis script essentially creates a trading strategy that goes long when there is an EMA crossover, but only if the RSI is below a certain overbought level. It goes short when there is an EMA crossunder, but only if the RSI is above a certain oversold level. The moving averages are plotted on the chart for visual reference.
SCALPING 5m
Pairs: BIGTIME/USDT--- API3/USDT---BAKE/USDT--- ZIL/USDT
Position TrackerUse this tool to plot a trading position on the chart, using the guided confirmation prompts after adding to the chart.
To use this tool, after adding to the chart it will prompt for entry and exit time and entry price selection which will require using a mouse or touch screen to complete the action; the prompts appear at the bottom of the chart and are a blue bubble/box looking object :)
It will provide a readout of the live profit and loss, run-up and drawdown of a trade as well as present notes if added.
Visuals provide an easy look at periods of drawdown, and a anchored vwap is included as a simple guide for trade management.
Setting the symbol will allow many instances of the tool on the same layout and each instance will hide it's display while not on the matching symbol chart.
Once the end time for the trade is met, the label with trade breakdown thoughtfully moves away from active price and can be seen by scrolling to trade entry area.
If there's enough interest I will add some additional features but wanted to start simple. Or feel free to copy and make it your own!
Thanks and happy trading.