Capital Asset Pricing Model (CAPM) [Loxx]Capital Asset Pricing Model (CAPM) demonstrates how to calculate the Cost of Equity for an underlying asset using Pine Script. This script will only work on the monthly timeframe. While you can change the default inputs, you should study what CAPM is and how this works before doing so. This indicator pulls various types of data from SPY from various timeframes to calculate risk-free rates, market premiums, and log returns. Alpha and Beta are computed using the regression between underlying asset and SPY. This indicator only calculates on the most recent data. If you wish to change this, you'll have to save the script and make adjustments. A few examples where CAPM is used:
Used as the mu factor Geometric Brownian Motion models for options pricing and forecasting price ranges and decay
Calculating the Weighted Average Cost of Capital
Asset pricing
Efficient frontier
Risk and diversification
Security market line
Discounted Cashflow Analysis
Investment bankers use CAPM to value deals
Account firms use CAPM to verify asset prices and assumptions
Real estate firms use variations of CAPM to value properties
... and more
Details of the calculations used here
Rm is calculated using yearly simple returns data from SPY, typically this is just hard coded as 10%.
Rf is pulled from US 10 year bond yields
Beta and Alpha are pulled form monthly returns data of the asset and SPY
In the past, typically this data is purchased from investments banks whose research arms produce values for beta, alpha, risk free rate, and risk premiums. In 2022 ,you can find free estimates for each parameter but these values might not reflect the most current data or research.
History
The CAPM was introduced by Jack Treynor (1961, 1962), William F. Sharpe (1964), John Lintner (1965) and Jan Mossin (1966) independently, building on the earlier work of Harry Markowitz on diversification and modern portfolio theory. Sharpe, Markowitz and Merton Miller jointly received the 1990 Nobel Memorial Prize in Economics for this contribution to the field of financial economics. Fischer Black (1972) developed another version of CAPM, called Black CAPM or zero-beta CAPM, that does not assume the existence of a riskless asset. This version was more robust against empirical testing and was influential in the widespread adoption of the CAPM.
Usage
The CAPM is used to calculate the amount of return that investors need to realize to compensate for a particular level of risk. It subtracts the risk-free rate from the expected rate and weighs it with a factor – beta – to get the risk premium. It then adds the risk premium to the risk-free rate of return to get the rate of return an investor expects as compensation for the risk. The CAPM formula is expressed as follows:
r = Rf + beta (Rm – Rf) + Alpha
Therefore,
Alpha = R – Rf – beta (Rm-Rf)
Where:
R represents the portfolio return
Rf represents the risk-free rate of return
Beta represents the systematic risk of a portfolio
Rm represents the market return, per a benchmark
For example, assuming that the actual return of the fund is 30, the risk-free rate is 8%, beta is 1.1, and the benchmark index return is 20%, alpha is calculated as:
Alpha = (0.30-0.08) – 1.1 (0.20-0.08) = 0.088 or 8.8%
The result shows that the investment in this example outperformed the benchmark index by 8.8%.
The alpha of a portfolio is the excess return it produces compared to a benchmark index. Investors in mutual funds or ETFs often look for a fund with a high alpha in hopes of getting a superior return on investment (ROI).
The alpha ratio is often used along with the beta coefficient, which is a measure of the volatility of an investment. The two ratios are both used in the Capital Assets Pricing Model (CAPM) to analyze a portfolio of investments and assess its theoretical performance.
To see CAPM in action in terms of calculate WACC, see here for an example: finbox.com
Further reading
en.wikipedia.org
Educational
HMA w/ SSE-Dynamic EWMA Volatility Bands [Loxx]This indicator is for educational purposes to lay the groundwork for future closed/open source indicators. Some of thee future indicators will employ parameter estimation methods described below, others will require complex solvers such as the Nelder-Mead algorithm on log likelihood estimations to derive optimal parameter values for omega, gamma, alpha, and beta for GARCH(1,1) MLE and other volatility metrics. For our purposes here, we estimate the rolling lambda (λ) value used to calculate EWMA by minimizing of the sum of the squared errors minus the long-run variance--a rolling window of the one year mean of squared log-returns. In practice, practitioners will use a λ equal to a standardized value put out by institutions such as JP Morgan. Even simpler than this, others use a ratio of (per - 1) / (per + 1) to derive λ where per is the lookback period for EWMA. Due to computation limits in Pine, we'll likely not see a true GARCH(1,1) MLE on Pine for quite some time, but future closed source indicators will contain some very interesting industry hacks to get close by employing modifications to EWMA. Enjoy!
Exponentially weighted volatility and its relationship to GARCH(1,1)
Exponentially weighted volatility--also called exponentially weighted moving average volatility (EWMA)--puts more weight on more recent observations. EWMA is calculated as follows:
σ*2 = λσ(n - 1)^2 + (1 − λ)u(n - 1)^2
The estimate, σn, of the volatility for day n (made at the end of day n − 1) is calculated from σn −1 (the estimate that was made at the end of day n − 2 of the volatility for day n − 1) and u^n−1 (the most recent daily percentage change).
The EWMA approach has the attractive feature that the data storage requirements are modest. At any given time, we need to remember only the current estimate of the variance rate and the most recent observation on the value of the market variable. When we get a new observation on the value of the market variable, we calculate a new daily percentage change to update our estimate of the variance rate. The old estimate of the variance rate and the old value of the market variable can then be discarded.
The EWMA approach is designed to track changes in the volatility. Suppose there is a big move in the market variable on day n − 1 so that u2n−1 is large. This causes our estimate of the current volatility to move upward. The value of λ governs how responsive the estimate of the daily volatility is to the most recent daily percentage change. A low value of λ leads to a great deal of weight being given to the u(n−1)^2 when σn is calculated. In this case, the estimates produced for the volatility on successive days are themselves highly volatile. A high value of λ (i.e., a value close to 1.0) produces estimates of the daily volatility that respond relatively slowly to new information provided by the daily percentage change.
The RiskMetrics database, which was originally created by JPMorgan and made publicly available in 1994, used the EWMA model with λ = 0.94 for updating daily volatility estimates. The company found that, across a range of different market variables, this value of λ gives forecasts of the variance rate that come closest to the realized variance rate. In 2006, RiskMetrics switched to using a long memory model. This is a model where the weights assigned to the u(n -i)^2 as i increases decline less fast than in EWMA.
GARCH(1,1) Model
The EWMA model is a particular case of GARCH(1,1) where γ = 0, α = 1 − λ, and β = λ. The “(1,1)” in GARCH(1,1) indicates that σ^2 is based on the most recent observation of u^2 and the most recent estimate of the variance rate. The more general GARCH(p, q) model calculates σ^2 from the most recent p observations on u2 and the most recent q estimates of the variance rate.7 GARCH(1,1) is by far the most popular of the GARCH models. Setting ω = γVL, the GARCH(1,1) model can also be written:
σ(n)^2 = ω + αu(n-1)^2 + βσ(n-1)^2
What this indicator does
Calculate log returns log(close/close(1))
Calculates Lambda (λ) dynamically by minimizing the sum of squared errors. I've restricted this to the daily timeframe so as to not bloat the code with additional logic required to derive an annualized EWMA historical volatility metric.
After the Lambda is derived, EWMA is calculated one last time and the result is the daily volatility
This daily volatility is multiplied by the source and the multiplier +/- the HMA to create the volatility bands
Finally, daily volatility is multiplied by the square-root of days per year to derive annualized volatility. Years are trading days for the asset, for most everything but crypto, its 252, for crypto is 365.
MapMap - an indicator that shows the highest and lowest points on the price movement road.
The calculation is based on the type of price data specified in the "Source" parameter and the length of the time interval specified in the "Length" parameter.
The indicator helps to visually find a local trend and rebound points.
Thanks for your attention!
Average Volume ProfileAverage Volume Profile is an abstract based on a user suggestion.
The information displayed could be summed up as a volume profile divided by a market profile.
This indicator is a profile which displays the average volume of an area (of price).
It also calculates and displays the highest average volume point (HAV) and the relating value zones (calculated in the similar fashion to a volume profile).
Most of the code is directly from my "Volume/Market Profile" Indicator
I am not entirely sure of how to make use of the information displayed in this indicator or how useful it is.
However, I have added some things I figured would be useful to comprehend this information, such as:
- Read-out for highest average volume
- Read-out for current price average volume
- Read-out for current candle distributed volume (labeled as: "Vol")
- Floating line to visualize the current distributed volume in relation to the rest of the profile.
- Color changing labels for when the current distributed volume is higher than the current price avg volume.
Enjoy!
Hussarya compare DJI SPX BTCScript shows relations between DJI downJones SPX and BTC:USD.
DJI chart must be set from candlestick to line
Red line is price (close). x 8
Green line ist te price BTCUSD from Binance price (close) x 1.5
Volume/Market ProfileVolume/Market Profile is a 2 in 1 Volume Profile and Market Profile Indicator.
This indicator is my own calculations for compiling a volume profile and market profile.
The profile is progressively calculated live as the chart develops.
I have made use of both Boxes AND Lines to allow me to display a finer granularity profile by displaying up to twice the max amount of lines allowed in tradingview.
I have spent a lot of time to make sure the values are getting appended exactly as intended so that I can assure this profile is operating as precisely as possible within the limitations of the data available.
To make my calculations easier to use in other places, I have made my volume profile a function that can be extracted and used whenever you need values from a volume profile.
Feel free to read through the script if you don't understand how this profile is developed. I have made a commentary of my volume profile function to help you understand what exactly happens to compile the profiles.
As mentioned before, This indicator doubles as a market profile. To view both at the same time you will need to add the indicator on your chart twice.
I have built in comprehensive customizations to allow you to display your profiles however fits your needs.
Timeframe: The aggregation period for profiles, to see a 1 week profile, change the timeframe to 1 week.
Note: You can add custom timeframes by adding a custom timeframe in your chart timeframe dropdown menu. When you add timeframes in this area, they appear as options within indicators with the timeframe input.
Sensitivity: Allows for greater or less granularity changes. The calculation method for granularity automatically changes depending on the range of your chart.
Note: Multiply this value by 100 and that will be the max range (in ticks) of your price before the indicator automatically adjusts to make the profile less granular. (ex. If price ranges $1, and 1 tick is $0.01, granularity will be 0.01 with a sensitivity of 1+)
Value Area %: % of total volume to display as the value zone. (_% of total profile values are contained within the value zone)
Calculate as Market Profile: Uses a 1 Instead of the candle volume, to display a Market Profile. (If selected POC -> TPOC)
Display Size: Sets the # of bars from the profile axis to the profile's max value. If set negative, profile will be displayed left of axis, if positive, profile will be displayed to the right of the axis.
Display Offset: Sets the # of bars in front(or behind) the current chart bar to set the axis of the profile. If negative, the axis will be to the left of the current chart bar, if positive the axis will be right of the current chart bar.
Display Historical POC/VAH/VAL: Choose to display historical poc,vah,val lines.
Colors: I'm not explaining colors.
Enjoy!
Sector RotationThis script is attempt to create and observe the real-time and historical performance of the all major sectors of Indian Market in one screen.
for Data Presentation I used Short sector names so that I can manage to get space and efficient presentable data.
Short Names and Actual Sector Names
BNF : CNX-BANKNIFTY
IT : CNX-IT
PRMA : CNX - PHARMA
FMCG : CNX-FMCG
AUTO : CNX-AUTO
MTAL : CNX-METAL
MDIA : CNX-MEDIA
RLTY : CNX-REALTY
IFRA : CNX-INFRA
ENGY : CNX-ENERGY
PSU-B : CNX-PSU-BANK
PVT-B : NIFTY-PVT-BANK
F-SRV : CNX-FINANCE
CONSM : CNX-CONSUMPTION
C-DUBL : NIFTY_CONSR_DURBL
You can use this script in 30-min, Daily, Weekly and Monthly Time Frames.
The green Square denotes the current Symbol Performance.
The Blue Border boxes are created when one sector intersects other sector.
In this Update following features are added
Now users have control over sectors, what are all the sectors you wanted to plot you can select from the input menu.
Currently user can highlight any one sector in different border color so that user can easily spot and track particular sector.
This thicker blue line denotes lowest and highest point of the current timeframe.
[FriZz]Watermark -- Watermark by FriZz | FrizLabz --
Lets you Customize a watermark how ever you would like
There are 4 Textboxes in the settings window 2 for your inputs
There's 1 with instructions/examples and 1 with Special Characters (there are tons more online)
-- The options you can type into Textbox 1 and 2 --
- Volume
- Open
- Close
- High
- Low
- Ticker [ Chart ticker ]
- Ticker2 [ Optional 2nd ticker that can be set in the settings will also display close ]
- TF
- Day
- Date
- Time
- Session
- SessionTime
-- Important --
These options need to be spelled and Case matched correctly or it will simply just display the word
You can add anything around a word or between two words you would like
If you want a new line simply press [ ENTER/RETURN ] and continue
-- Tooltip --
Tooltip appears when you mouse over the watermark
There are options to change the session times if you need too
The Sessions will be listed on the tooltip with Session times
I think that pretty much covers most of it if you have any questions or suggestions on this or anything else I've made
or if I missed a bug.. feel free to comment or DM me
Enjoy! - FriZz
SPX and Federal Net Liquidity differenceScript for applying Federal Net Liquidity to the SPX post-2020 monetary policy. Original indicator from jlb05013 with adjustments to make it more readable and usable. When the indicator is above 250 the SPX is overbought and when it's below -250 the SPX is oversold.
It's not perfect, I'm just publishing because I didn't see it already out there.
Supertrend, MA 44|6, EMA FIBS 13|21|34I have this indicator based on my strategy. This indicator is based on existing functions available in the system. I haven't added anything new. This indicator uses Supertrend, MA44|6, EMA fibs 13|21|34 combining to find a profitable trade.
- Supertrend : Indicator uses supertrend strategy with default ATR period of 10 and Factor value 3. These values can be customized based on your preferences. Uptrend is denoted by green color and downtrend by red color. You can change the colors based on your preferences.
- MA 44|6: Indicator plots moving averages of 44 and 6. These values can be customized based on your preferences. Although it is highly recommended to keep 44 as is. Value 6 can be adjusted based on your preference. Default color for uptrend is green and for downtrend is red. You can change the colors based on your preferences.
- FIBS EMA 13|21|34: Indicator plots EMA of fibbonacci numbers 13, 21,34 to identify consolidation and breakout. The periods can be adjusted but it is highly recommended not to do so. Default colors for 13,21 and 34 is Aqua, Blue and Navy respectively. You can change the colors based on your preferences.
When to take trade?
To take a trade all conditions needs to be fulfilled.
Supertrend : Always take a trade in the direction of Supertrend. It is always advisable to take trade if the trend is changing or price is taking support of resistance.
MA 44|6: Moving average 44 indicates average price of 44 last candles and 6 for last 6 candles. Price crossing MA 44 indicates change in trend. It is advisable to take trade at crossing the line above or below. If many candles closing near MA 44 then it indicates consolidation. The more far the candle closes from MA44 the better. MA 6 is used to identify when to enter or exit the trade. If candle closes away from MA 6 then you can wait for candle to start near the MA 6 line. If candle closes above/below MA 6 you can exit your trade.
Fibonacci 13|21|34: When all lines are closed it indicates consolidation. When price breakouts to either direction you can take a trade in that direction with following conditions.
Bullish Trade:
When to enter?
If candle closed above MA 44, Supertrend is uptrend and EMA Fibs are moving away and are above MA 44. The price is near to MA 6 line then you can enter into bullish trade. If price is away from MA 6 then you should wait until the price/line comes near to avoid loss.
When to exit?
Price moving in opposite direction:
You should set a stop loss when you enter the trade. The stop loss can be set below the low of the previous candle or any other strategy you have. But it is really important to set the stop loss. If price moves in opposite direction then your stop loss will hit and you will be out of the trade.
Price moving in same direction:
Once you enter the trade you can exit based on two conditions whichever suits you.
1. Exit the trade if candle closes below MA6. The drawback is you may exit too early. You can also adjust the period based on your preferences.
2. Exit the trade if candle closed below low of previous candle. The drawback is you may book less profit but you can capture the movement very well.
Bearish Trade:
When to enter?
If candle closed below MA 44, Supertrend is downtrend and EMA Fibs are moving away and are below MA 44. The price is near to MA 6 line then you can enter into bearish trade. If price is away from MA 6 then you should wait until the price/line comes near to avoid loss.
When to exit?
Price moving in opposite direction:
You should set a stop loss when you enter the trade. The stop loss can be set below the low of the previous candle or any other strategy you have. But it is really important to set the stop loss. If price moves in opposite direction then your stop loss will hit and you will be out of the trade.
Price moving in same direction:
Once you enter the trade you can exit based on two conditions whichever suits you.
1. Exit the trade if candle closes below MA6. The drawback is you may exit too early. You can also adjust the period based on your preferences.
2. Exit the trade if candle closed below low of previous candle. The drawback is you may book less profit but you can capture the movement very well.
When not to take trade?
1. If MA 44 is completely horizontal and EMA Fibs are very close to each other. This indicates that the market is consolidated and if you enter the trade you may hit stop loss very often.
Note: Please note that I am not expert and I don't take any responsibility of your profits or losses. I have created this indicator based on my knowledge and it is for study purpose. Use of this indicator is totally your responsibility. Use all your knowledge and expertise and don't totally depend on the indicator. Don't forget to use stop loss and do money management.
Happy Trading!
HOTW/LOTW frequencyThis indicator plots a table of the frequency of which day the week the high-of-the-week and the-low-of-the week are formed.
You will need to manually update the symbol open days in the settings (FX = 5, crypto = 7)
Make sure you are on the Daily timeframe to get the correct results
Invest-Long : Script for quick checks before investingA simple script to verify RSI, SMAs, VWMA, and Pivots on Daily, Weekly, and Monthly time frames.
In case if you are not interested in SMA's or want to add different cheks -- simply copy the script to local and edit.
Happy investing.
Add the script to any chart and table values remain the same irrespective of current chart resolution, as it checks on Daily, Weekly, and Monthly time frames.
The table has multiple columns.
1st column checks on RSI value on all 3 timeframes. Ideally, look for all green and D>W>M
2nd Column: Check current Close is above 20 SMA and 50 SMA on Daily / Weekly / Monthly time frames
3rd Column: Check SMA 13> SMA 34, SMA 34 > SMA 55 and SMA 20 > SMA 50 on Daily / Weekly time frames
4th Column: Check Current close is above Weekly Pivot and Monthly Pivot. And also verify Close is above 4 Week High.
5th Column: Verify Close is above Daily VWMA. Also Daily VWMA is > Weekly VWMA and Weekly > Monthly.
// Similarly you can add more checks based on different time frames
Feel free to trouble me incase if need help.
Crypto Map Dashboard v1.0🔰Overview
Charts are an essential part of working with data, as they are a way to condense large amounts of data into an easy to understand format. Visualizations of data can bring out insights to someone looking at the data for the first time, as well as convey findings to others who won’t see the raw data. There are countless chart types out there, each with different use cases. Often, the most difficult part of creating a data visualization is figuring out which chart type is best for the task at hand.
What are the types of metrics, features, or other variables that you plan on plotting? Although it depended on some multiple factors!
But my choices of the chart type for this Crypto datas was Pie chart or Donut char for crypto dominances ,and Colum (Bar) chart for Total MarketCaps .
The audiences that I plan on presenting this for them could be all tradingviewrs , especially crypto lovers ,or those who just aim to have an initial exploration for themselves ,like me!
so this indicator mostly could be an educational indicator script for pine coders !
We can use the " Crypto Map Dashboard " indicator to Get an quick overview of the crypto market and monitor where the smart money Flow changing by comparing the dominances and totals Caps .
In general, it consists of 4 parts:
✅1 =>> Table1 : If you like to see and compare and monitor the changes of dominances of (Bitcoin, Ethereum, Usdt , Usdc , etc.) and their market cap in different times you can see the table on The upper-right corner.
✅2 =>> Table2: Also, in the table lower-right corner, you can see the changes of the totals(Total, Total2 , Total3 and TotalDefi) in the same time periods.
✅3 =>> pie chart or donut chart: By viewing this , you understand better about Table1 Datas, that it depicts exactly how Dominance is distributed and specialized.
✅4 =>> column chart (bar chart) : And in the last you can clearly compare the total marketcaps and see how far they are from their ATHs.
You also can even notice the entry and exit of liquidity from the crypto market!
I must also mention that I am definitely still a beginner compared to more experienced pine coders, and there may be some bugs in my codes and calculations, but I am an open person and I welcome your comments ,Also Let me know if you have any questions.
Lots of Love to all tradingviewers and pineCoder ,Cheers!💚❤️💙
SMA 10/20/50 by Bull Bear Investing BabyThis script basically is a combination of 3 different simple moving averages line to determine the trend of the assets
The colour indicating which moving averages are as per following:
1) Green- 10MA
2) Red- 20MA
3) Blue- 50MA
When the moving averages are aligned as per following, the trend is indicating towards an uptrend:
---> 10ma > 20ma > 50ma
Likewise when the moving averages are aligned as per following, the trend is indicating towards a downtrend:
---> 10ma < 20ma < 50ma
Dollar Cost Averaging (Portfolio)
You can use it in daily, weekly and monthly candles. It can be used on multiple assets(10). All assets must have data and make sure they all use the same currency. See style in settings for plot titles If you are interested in passive investing, I hope it helps.
------------------
Günlük, haftalık, aylık mumlarda kullabilirsiniz. Birden fazla varlıkta kullanılabilir. Çoklu kullanım için hepsinin verisi olmalı ve aynı para birimini kullanmalı. Ayarlardan stilde grafik başlıklarını bulabilirsiniz. Pasif yatırım ile ilgiyseniz umarım yardımcı olur.
BTMM OFJ FOR BEST RESULTS PLEASE SWITCH TO LINE CHART OR DISABLE THE CHART CANDLES. BELOW IS A LINE WITH OPACITY TURNED DOWN TO 15%
ASIA, LONDON, AND NEW YORK SESSIONS CAN BE CUSTOMIZED (1ST 3 HRS DEFAULT)
VOLUME CANDLES CAN BE APPLIED WITH SUPPLY AND DEMAND OR MARKET MAKER METHOD. IN A STRONG TREND YOU WANT TO SEE REPEATED HIGH VOLUME CLUSTERS IN THE DIRECTION OFTHE TREND AND FADING LOW VOLUME ON THE RETRACE
BASICK KEY LEVELS WEEKLY INITIAL BALANCE (MONDAY+TUESDAY HIGHEST HIGH AND LOWEST LOW) YESTERDAY AND LASY WKHI/LO
QUICK APPLICATON
Tick StatisticsTick Statistics:
I have seen many questions/queries related to tick data in TV telegram channels. This script will help pine scripts to understand how ticks work, how to capture and process tick data.
This is an educational indicator script for pine scripters.
The indicator shall work only on real time candles. Tick data capture is initiated as soon as indicator is loaded on the chart. You might not get correct statistics on 1st candle in case indicator is loaded when real time candle is in progress, in such case you can monitor the statistics generated for subsequent candles.
Generated statistics is shown on the chart by placing 2 diamond shapes above and below the candle.
Diamond shape below the candle will have candles ‘tick data’ listed in a table. This can be view by placing mouse pointer on the diamond shape. Refer to point 1 below for more details.
Diamond shape above the candle will have statistics as mentioned in point no 2 onwards. To view the statistics place the mouse point on the diamond shape. The shape will appear in green color when both tick price and tick volume are both moving in the same direction. The diamond shape in red color means tick price and tick volume are moving in opposite direction.
The script captures tick by tick data and generate statistics below:
1. List of tick data with details below: (this is stored in the diamond shape placed below the candle)
a. Tick no
b. Tick type – Up tick (Up), Down tick (Dn), No change (--)
c. Tick price
d. Volume
e. Price difference (as compared to previous tick price)
f. Volume difference (as compared to previous tick volume)
2. Tick statistics
a. Total ticks
b. Number of up ticks
c. Number of down ticks
d. Number of No change ticks
3. Volume Statistics
a. Total volume
b. Up tick volume
c. Down tick volume
d. Volume associated with ticks where there is no change
e. Candle volume (just for reconciliation purpose)
4. Max-min statistics
a. Max volume = <> at price = <> at tick no = <>
b. Min volume = <> at price = <> at tick no = <>
c. Max price = <> at volume = <> at tick no = <>
d. Min price = <> at volume = <> at tick no = <>
5. Candle summary
a. Price << Up >> (if price is up as compared to 1st tick <> otherwise
b. Volume <> (if up tick volume is more than down tick volume <> otherwise
Equities Risk Tool [vnhilton]To quickly apply this indicator onto the chart, open the source code in Pine Editor & click 'Add to chart'. Perhaps in the future, TradingView will add a feature where you can have favourited indicators on the favourites toolbar alongside the favourited drawing tools. 🤔
Traders will need to calculate how many shares are needed for their position, where if price goes against them towards their stop loss, then they'll lose the amount that they risked on that trade. The formula for this is: Amount willing to risk / Stop loss distance. Traders can carry out these calculations via a calculator, spreadsheet or a simple program with outputs generated from inputs. These 3 methods have 1 thing in common, & it's that you have to manually input the the values, which isn't very convenient, especially for traders trading in a fast paced environment, where milliseconds matter. This indicator is similar to TradingView's Long & Short Position tools, & removes this inconvenience by allowing you to only click to submit your entry & stop out levels, without having to type a single thing (the only thing that would require typing is your account equity in the settings).
This indicator will display lines on the chart showing the entry, stop-out & several profit target levels. The entry & stop-out levels can be moved in any direction as desired, & the profit target levels following suit. You're able to adjust the different profit factors if you're aiming for different reward targets (e.g. You want a 1:2 RR trade, so the profit factor here will be 2 - 2 times the distance between the entry level & stop out level).
A table will also be displayed showing the direction of the position, alongside the shares required for several account risks which is useful if trading different quality setups from A-D for example. The calculated shares displayed are also shown in proportions as well. Here, you're able to see 25%-50%-75%-100% of calculated shares, which may be useful when scaling in/out of trades. All mentioned features are customisable.
Calculated shares for long & short positions can be rounded down to any decimal places. This can be useful if you intend to trade e.g. in batches of 100, then you would use a round down factor of -2.
Divergence Cheat Sheet'Divergence Cheat Sheet' helps in understanding what to look for when identifying divergences between price and an indicator. The strength of a divergence can be strong, medium, or weak. Divergences are always most effective when references prior peaks and on higher time frames. The most common indicators to identify divergences with are the Relative Strength Index (RSI) and the Moving average convergence divergence (MACD).
Regular Bull Divergence: Indicates underlying strength. Bears are exhausted. Warning of a possible trend direction change from a downtrend to an uptrend.
Hidden Bull Divergence: Indicates underlying strength. Good entry or re-entry. This occurs during retracements in an uptrend. Nice to see during the price retest of previous lows. “Buy the dips."
Regular Bear Divergence: Indicates underlying weakness. The bulls are exhausted. Warning of a possible trend direction change from an uptrend to a downtrend.
Hidden Bear Divergence: Indicates underlying weakness. Found during retracements in a downtrend. Nice to see during price retests of previous highs. “Sell the rallies.”
Divergences can have different strengths.
Strong Bull Divergence
Price: Lower Low
Indicator: Higher Low
Medium Bull Divergence
Price: Equal Low
Indicator: Higher Low
Weak Bull Divergence
Price: Lower Low
Indicator: Equal Low
Hidden Bull Divergence
Price: Higher Low
Indicator: Higher Low
Strong Bear Divergence
Price: Higher High
Indicator: Lower High
Medium Bear Divergence
Price: Equal High
Indicator: Lower High
Weak Bear Divergence
Price: Higher High
Indicator: Equal High
Hidden Bull Divergence
Price: Lower High
Indicator: Higher High
Barndorff-Nielsen and Shephard Jump Statistic [Loxx]The following comments and descriptions are from from "Problems in the Application of Jump Detection Tests to Stock Price Data" by Michael William Schwert; Professor George Tauchen, Faculty Advisor.
This indicator applies several jump detection tests to intraday stock price data sampled at various frequencies. It finds that the choice of sampling frequency has an effect on both the amount of jumps detected by these tests, as well as the timing of those jumps. Furthermore, although these tests are designed to identify the same phenomenon, they find different amounts and timing of jumps when performed on the same data. These results suggest that these jump detection tests are probably identifying different types of jump behavior in stock price data, so they are not really substitutes for one another.
In recent years there has been a great deal of interest in studying jumps in asset price movements. Reasons why it is important to know when and how frequently jumps occur include risk management and the pricing and hedging of derivative contracts. Investors would benefit greatly from knowing the properties of jumps, since large instantaneous drops in asset prices result in large instantaneous losses. The effect of jumps on derivative pricing is equally significant, especially considering the important role derivatives play in modern financial markets. When asset price movements are continuous, investors can perfectly hedge derivative contracts such as options, but when jumps occur, they cause a change in the derivative price that is non-linear to the change in the price of the underlying asset. Thus, jumps introduce an unhedgeable risk to the holders of derivative contracts.
The ability to identify realized jumps in the financial markets could provide helpful information such as how frequently jumps occur, how large the jumps are, and whether they tend to occur in clusters. With this goal in mind, several authors have developed tests to determine whether or not an asset price movement is a statistically significant jump. These tests take advantage of the high-frequency intraday price data available today through electronic sources. Barndorff-Nielsen and Shephard (2004, 2006) use the difference between an estimate of variance and a jump-robust measure of variance to detect jumps over the course of a day. Approaching the problem differently, Jiang and Oomen (2007) exploit high order sample moments of returns to identify days that include jumps. Aїt-Sahalia and Jacod (2008) also exploit high order sample moments of returns to detect jumps by comparing price data sampled at two different frequencies. Lee and Mykland (2007) test for jumps at individual price observations by scaling returns by a local volatility measure. While these tests employ different strategies for detecting jumps, they are all designed to identify the same phenomenon.
For this indicator we are focused on the Barndorff-Nielsen and Shephard jump statistic.
Barndorff-Nielsen and Shephard (2004, 2006) developed a test that uses high-frequency price data to determine whether there is a jump over the course of a day. Their test compares two measures of variance: Realized Variance, which converges to the integrated variance plus a jump component as the time between observations approaches zero; and Bipower Variation, which converges to the integrated variance as the time between observations approaches zero, and is robust to jumps in the price path, an important fact for this application. The integrated variance of a price process is the integral of the square of the σ(t) term in (2.2.2), taken over the course of a day. Since prices cannot be observed continuously, one cannot calculate integrated variance exactly, and must estimate it instead.
For our purposes here, this is calculated as:
r = log(p /p )
This the geometric return from time ti-1 to time ti.
Then, Realized Variance and Bipower Variation are described by the following functions (see code for details)
realizedVariance(float src, int per)
and
bipowerVariance(float src, int per)
Huang and Tauchen (2005) also consider Relative Jump, a measure that approximates the percentage of total variance attributable to jumps:
RJ = (RV - BV) / RV
This statistic approximates the ratio of the sum of squared jumps to the total variance and is useful because it scales out long-term trends in volatility so one can compare the relative contribution of jumps to the variance of two price series with different volatilities.
To develop a statistical test to determine whether there is a significant difference between RV and BV, one needs an estimate of integrated quarticity. Andersen, Bollerslev, and Diebold (2004) recommend using a jump-robust realized Tri-Power Quarticity, I've included commentary in code to better explain how this indicator is collocated. See code for details.
How to use this indicator
When the bars turn gray, it's an indication that a jump has occurred in the market. It serves a warning that price jumped. I've included a percent point function (or inverse cumulative distribution function) to cutoff Z-score values depicted by histogram values. The top line at 3 is the empirical maximum Z-score value a serves merely as a point of reference. The Red line is the cutoff line calculated using PPF. When the histogram is green, no jumps have been detected. This indicator also includes alerts, signals, and bar coloring. I've also expanded the possible source types using my own Expanded Source Types library so you can test different log return methods as inputs. It is recommended to use window sizes of 7, 16, 78, 110, 156, and 270 returns for sampling intervals of 1 week, 1 day, 1 hour, 30 minutes, 15 minutes, and 5 minutes, respectively.
If you'ed like to better understand PPF, see here: Distributions in python
Included:
Bar coloring
Signals
Alerts
Loxx's Expanded Source Types
TrapulatorA position size, stop loss and take profit calculator to make forex trading easier.
Utilizes the symbol, payout rates, etc.
How to Use:
Go to the indicator's settings and change the "Settings" and "Entry" sections. After saving your settings, the values will be drawn in a table on the chart.
This has been republished, so that it has the correct name. You can't change the name of scripts once they've been published as far as I'm aware. So, this version of the script will receive updates, and the Trap Calculator will just be a 1.0 version, that's available.
There are default values within the calculator, so use at your own risk and do your own due diligence. This is public so that you can use it to make a calculator that better suits your needs if you want.