Linear Regression 200/100/50/20Four time frames in one indicator in different colors, showing current price trend in different scopes.
If the slope of the smaller time frame is in a (0,75;1,25) interval of some of the bigger ones the smaller one is omitted (different signs near zero are not coalesced in that way though).
Every time frame has four deltas of range in trend lines of different grade of transparency (2-1-4-3), as well as a vertical line denoting regression date range start, also bearing the same color (blue-red-green-gray for 200/100/50/20).
On the right of the latest bar are Pearson coefficients and slopes of the regressions, 200/100/50/20 bottom-up, also appropriately colored.
Cari dalam skrip untuk "25年黄金价格走势预测"
BUY/SELL SIGNALS from LSMA/ALMA/HMAThis indicator uses the Least Squares Moving Average (LSMA) in tandem with the Arnaud Legoux Moving Average (ALMA) and Hull Moving Average (HMA) to generate buy-sell signals, represented by the light blue and orange crosses respectively.
The yellow lines produced by the indicator show periods of market uncertainty and possible reversal, and a modified, user-defined VWAP is given along with a 200 EMA. The point of this indicator was to create a smoother, more visually appealing moving-average, price action-based indicator when compared to the trend-step and simple moving average indicators available. This indicator uses a fast (25 period) LSMA coupled with a slower (50 period) HMA and ALMA in order to make signals both smooth and fast.
This indicator will work on all markets, except the modified VWAP will naturally not function if the volume is unpublished for that market. Use of this indicator will be very strong in trending markets, as the yellow line will spot possible reversals quite early, meaning the trader can be ready early for the buy/sell signal to appear. Use of this indicator in sideways market conditions will be limited, as it is for all moving average-based indicators, but the damage will be minimal as bad trades will be quickly realized by the indicator and the color will switch to yellow, this is possible because of the settings differences between the period lengths of the LSMA vs the ALMA + HMA.
Percentage Levels by TimeframePlots the positive and negative percentage levels from a selection of timeframes and sources for any ticker. You can use this within a pullback trading system. For example, if you historically look at the average pullback of large cap stocks and ETF's, you can use this indicator to plot the levels it could pullback to for an entry to go long. It can be used as potential targets when trading a ticker short. Another use for this is to backtest the set percentage targets using TradingView's bar replay feature to see how ETF's and large cap stocks have reacted at these levels. Note: This is intended to be used at timeframes equal to higher than the chart's as it may cause re-painting issues.
Currently percentage levels are statically set to 1, 3, 5, 10, 15, 20, 25, and 30% levels above and below the chosen source (open, high, low, close). You can also display the data based on timeframes from Daily (1D) all the way up to Yearly (12M)
*Not financial advice but in my opinion the current percentage levels set (see above) are best used for ETF's and Large Cap Stocks.
Jan 2
Release Notes: Added the ability to select the historical bars to look back when plotting levels
Jan 2
Release Notes: To get a better display or proper resolution on your charts, change the view settings to "Scale Price Chart Only"
Jan 2
Release Notes: To add % labels for this indicator on the price axis, change your chart settings to include "Indicator Name Label" & "Indicator Last Value". You can find this under the Label section after hitting the gear icon in the bottom right of your chart.
Jan 2
Release Notes: Added: Custom Line Plot Extension Settings. Ideally both values should be equal to display optimal extended lines. To return to a base setting: '1' = Historical Lookback & '0' = Offset Lines. Also note this is dependent on the timeframe you are viewing on the chart.
Jan 2
Release Notes: Removed indicator from example chart that was not needed.
Jan 2
Release Notes: Updated some comments in the Pine Script
Jan 2
Release Notes: Update: Added commentary and instructions in the indicator settings to address recommended line plot settings for Stocks/ETF's vs Futures
Jan 2
Release Notes: Changed title from "Calculation Method" to "Calculation Source"
Jan 4 2021
Normal use of security() dictates that it only be used at timeframes equal to or higher than the chart's as it may cause re-painting
Slope Adaptive Moving Average (MZ SAMA)INTRODUCTION
This script is inspired from "Vitali Apirine (Stocks & Commodities V.36:5: Adaptive Moving Averages)" and a correction to Dynamic Volume Adaptive Moving Average (MZ DVAMA) . I have used slope filtering in order to adapt trends more precisely for better trades.
Slope adaption makes it better for adaptive moving average to detect trend health; making it easier to make decisions based on market strong price momentums, consolidations or breakouts. This isn’t possible with only using simply Adaptive Moving Averages .
Adaptive Moving Averages curve doesn’t change its length based on Slope but it uses slope adaptive color for trend strength detection.
TREND DETECTION
Green Color:
Strong Uptrend with good price momentum.
Red Color:
Strong Downtrend.
Yellow Color:
Market is either choppy, sideways or consolidating. Better to avoid taking new positions and if trade is running then its good to carry it on.
DEFAULTS SETTINGS
AMA length is 200 (Better for timeframes higher than 1H)
Minor length is 6
Major length is 14
Slope period is set to 34 with 25 of initial range. Consolidation is always below 17.
ALERTS
Buy/Sell Alerts will follow on when slope is out of consolidation/choppiness area. Best entry is at absolute alerts timing but other trades can be started midway based on trend condition.
Circular Candlestick ChartAn original (but impractical) way to represent a candlestick chart using circles arc.
The most recent candles are further away from the circle origin. Note that OHLC values follow a clockwise direction. A higher arc length would indicate candles with a higher body or wick range.
The Length settings determine the number of past candles to be included in the circular candlestick chart. The Width setting control the width of the circular chart. The Spacing setting controls the space between each arcs. Finally, the Precision settings allow obtaining a more precise representation of candles, with lower values returning more precise results, however, more precision requires a higher amount of lines. Settings are quite hard to adjust, using a higher length might require a lower spacing value.
Additionally, the script includes two pointers indicating the location of the 75 (in blue) and 25 (in orange) percentiles. This allows obtaining an estimate of the current market sentiment, with the most recent arcs laying closer to the 75 percentile pointer indicating an up-trend.
This new way to represent candlesticks might be useful to more easily identify candles clusters or to find new price patterns. Who knows, we know that new ways to see prices always stimulate traders imagination.
See you next year.
ROC PercentileRate Of Change Percentile calculates the current ROC (user defined length) as a percentile rank.
We use 2 separate arrays, one for all positive ROC values and one for all negative values within a defined lookback period. Then the current ROC value is compared to those arrays to find it's percentile ranking.
For example, a ranking of 75 means the ROC is in the 75th percentile of all POSITIVE ROC values over the lookback period.
A ranking of -80 is in the 80th percentile of all NEGATIVE ROC values over the lookback period.
Most ROC scripts use raw ROC values (or smoothed or otherwise altered), or have stochastic formula applied to them, I've not seen one that displays ROC as percentile ranking of previous positive/negative values.
What is the advantage?
Raw ROC data only gives half the picture. What we want to do is compare the ROC to previous ROC values, to give a sense of scale. Raw ROC values don't give you that context and you can only compare visually, usually limited to the number of bars you can see on your screen.
Using a percentile ranking gives us the context of current Rate of Change relative to the previous Rate of Change over a large lookback period, and not just visually but mathematically.
Why not using a long stochastic ROC? The problem with stochastics in general is that an outlier data point can ruin the data for the rest of the lookback period.
For example, imagine a huge outlier 8% ROC. The 2nd largest ROC is 4% and the 3rd largest is 2%, with all other values below this.
In this example, a stochastic ROC would display the 8% outlier as 100, the 4% as 50, the 2% as 25 and all other data would be squeezed down between 0-25.
Additionally, a value of 60 may have vastly different meaning depending on whether the lookback period contains a large outlier or not.
With a percentile ranking, that 8% outlier would still have a value of 100. But the 4% and 2% would be 99 and 98 respectively (this assumes 100 data points in the series, in reality values will usually be decimals).
This effectively flattens the curve and gives a more consistent and dependable experience, allowing you to more accurately assess the relative importance of the current ROC.
The line of circles is set at the 50 and -50 values for quick comparison.
Values > 50 represent ROC greater than 50% of previous positive ROC values.
Values < -50 represent ROC greater than 50% of previous negative ROC values.
Pivots High-Low Screener & AlertsHi fellow traders ,
Pleased to share a Pivot High - Low Screener.
The script uses the TV inbuilt Pivot function.
It Screens 25 tickers default set, these can be modified in the input dialog box.
All you need to do is attach to any chart and set the periodicity or the resolution of the chart to your desired alert() frequency requirement.
Now go to the input settings icon of the script and set your Pivot right and left parameters!
Set the alert from the menu as usual click - Any alert() function call and bingo you are done!!
Similarily change the chart periodicity to the next timeframe and set the next alert.
No more opening multiple charts and setting individual time consuming alerts().
You will get concatenated alerts or summary alerts for your tickers.
Track 25tickers with a single alert for each timeframe(Supports 40 tickers).
Happy trading with TV..
Mazuuma Churn IndicatorThis indicator was specifically made to confirm a periode of sideways movement (churn) on Bitcoin. It can probably be used for other cryptocurrencies as well. I use it on the daily timeframe.
Yellow means "Unconfirmed".
Orange means "Partially Confirmed".
Red means "Confirmed"
The indicator is not perfect, so use your common sense.
Churn starts when at least 2 of the conditions below are met (use also your common sense):
1. ATR < MA 20 on ATR
2. Distance to EMA 200 must be ≤ 16% at “Open churn”
3. EMA 12 on RSI between 40 and 60
4. ADX < 25
The above are weighted. Meaning no 1 has most significance. The numbers can be tweaked.
Reversal coming
* The indicators above break out, especially the ATR
* Color shift of the Heikin Ashi candle on weekly timeframe
* Engulfing candle on weekly timeframe
Because of the offset of the EMA 200, the precision of the Churn predictor can be off after a VERY big spike up or down, e.g. dec 2017. After such a spike use your common sense.
Personally I use this for bot trading, i.e. turn off trend following bots when in sideways market and use grid bots or other means of trading instead.
Trading Made Easy ATR BandsAs always, this is not financial advice and use at your own risk. Trading is risky and can cost you significant sums of money if you are not careful. Make sure you always have a proper entry and exit plan that includes defining your risk before you enter a trade.
Background:
This is my take on two relatively famous indicators that paint the colour of your candles in order to help identify trend direction and smooth out market noise. The Elder Impulse System was designed by Dr . Alexander Elder in his book Come Into My Trading Room and attempts to identify the change of trends and when these trends speed up and slow down (school.stockcharts.com). The system used a 13 period EMA and a MACD histogram, and compared each of these indicators to the previous period. In short, when both the histogram and the EMA were rising, the trend was accelerating to the upside and when both were falling, accelerating to the downside. Conversely, when the indicators were not in alignment, say the MACD falling but the EMA rising, it signaled a slowing down of momentum. The downside of this indicator is that it be can rather jumpy, focusing on a short period EMA for 50% of its calculation, leaving a trader to potentially sit on the sidelines during opportune pull backs to enter winning positions, or exit early when there is still a lot of gas left in the tank.
A similar concept has been employed by John Carter and his organization, SimplerTrading, with the 10X bars indicator. However, here they use the famous Directional Movement Index (DMI) created by J. Welles Wilder as the basis for their bars (www.simplertrading.com). John Carter states that the use of this indicator can lead to getting in earlier on more, bigger, and faster setups. The downside of this indicator is the reliance on the ADX calculations to keep you out of rangebound trades. Anyone who is familiar with the DMI system understands it has unparalleled ability to identify longer term trends, but it is also quite slow, leaving the trader to miss a good portion of the initial runup due to this ADX portion that is very slow to get moving and also slow to signal exits.
In short, both of these systems are designed with one thing in mind: keeping the trader on the right side of the move --- but both suffer from the same issue but on opposite sides of the spectrum. One is too fast and the other is too slow. Ultimately, leaving profits on the table for the trader when such a situation could be avoided.
Here I present my own take on these and have made the “Trading Made Easy ATR Bands”. I name it this because trading is much easier when you trade with the prevailing trend, and this system identifies these periods quite effectively while doing a better job of handling the speed flux of most markets. The base formula uses the DMI as its main calculation and the relationship between the DMI+ and DMI- lines, respectively, like the 10X bars. While the trader can investigate these on their own to understand these more intimately, essentially the DMI+ and DMI- lines are calculating the highs and lows respectively of each bar compared to a period in the past and smoothed with the true range, a measurement of volatility . What this ultimately presents is a picture of uptrends and downtrends, where price is making consistently more highs or more lows over a period of time. Where I have modified this relative to the 10X bars is I have ignored the ADX calculations. Further, values over 25 have been discussed as “strong” momentum, in my calculations, I have sped this up to 20 to get a trader into the move earlier. Second, I have added an additional calculation based around the 21-period exponential moving average calculated against its previous output. This then, like the Elder Impulse System, has two forms of market momentum as its calculation to smooth out noise, but has the benefit of being less jumpy, like the original 10X bar system. I have added a series of exponential moving averages following the Fibonacci sequence from 8-144 as a system of dynamic support and resistance showing the sentiment of both the shorter and longer term market participants. Last, I have added a series of Keltner Channels , from 1X-4X, that encompass the 21 period EMA as a base line. The 21 EMA is a stable in all of John Carter’s work and I do believe he is correct that the market is mostly structured around this line, since it roughly approximates one month of trading data. It is not uncommon to see price expand and contract back to this line over and over again.
Trade Signals:
Strong Bullish Momentum – The system will generate a green bar when the DMI+ line is over the DMI- line, the DMI+ line is equal or greater than 20 and the 21 EMA has increased relative to its last close.
Weak Bullish Momentum – The system will generate a blue bar in several scenarios. First, when the DMI+ line is over the DMI- line but the DMI+ line is not over 20 and the EMA is equal or less than the previous close. It will also print a blue bar if either the DMI or the EMA are not aligned, such as the DMI+ is over the DMI- but not over 20 but the EMA has risen compared to the last bar. Last, it will also print a blue bar if the DMI- is over the DMI+ but the EMA is rising.
Strong Bearish Momentum – The system will generate a red bar when the DMI- line is over the DMI+ line, the DMI- line is equal or greater than 20, and the 21 EMA has fallen relative to its last close.
Weak Bearish Momentum – The system will generate an orange bar in several scenarios. First when the DMI- line is over the DMI+ line but the DMI- line is not over 20 and the EMA is equal or greater than the last bar. It will also print an orange bar if either the DMI or the EMA are not aligned, such as the DMI- is over the DMI+ but not over 20 but the EMA has fallen. Lastly, it will also print an orange bar if the DMI+ line is over the DMI- and the EMA has fallen relative to the last bar.
Uses:
1) Like the Elder Impulse System and 10X Bar systems, these should be used as trade filters only.. It is in the trader’s best interest to trade with the trends and these bars identify these periods but may not always generate the most opportune time to enter a market. For instance, trying to short a market when the market is in a phase of Strong Bullish Momentum would not be wise, and vice versa with trying to open long positions when the market is exhibiting Strong Bearish Momentum. Use multiple forms of evidence to confirm the signals shown before entering any trade and to not take these signals on their without confluence of ideas. A viable system could use the Elder Triple Screen System (for reference, see this decent write up --- www.dailyforex.com) with the Trading Made Easy Bands as your “Tide” or longer term filter, and a further trading plan to establish an entry on a short time frame pull back.
2) Interim Trend Exhaustion – Keltner channels work as moving standard deviations from the 21 EMA . 3X multipliers will encompass 99.7% of price and 4X will encompass 99.9% of price away from the 21 EMA . During a trend it would be a good idea to lock in partial profits when price reaches these outer extrema as it is very highly probable that a retracement back to the mean is approaching. While not part of the system, and not recommended to be used by this system, a mean reversion trader could in theory look for reversals at these extrema points and trade a mean reversion strategy back to the 21EMA, but is a much riskier trade with lower probability of success. A trend trader should look to enter trades when a signal is given within the 1ATR or 2ATR zone as this is when price has not really started accelerating yet and is likely to see continued momentum in that direction.
Dictionary/Object LibraryThis Library is aimed to mitigate the limitation of Pinescript having only one structured data type which is only arrays.
It lacks data types like Dictionaries(in Python) or Object (in JS) that are standard for other languages. Tuples do exist, but it hardly solves any problem.
Working only with Arrays could be overwhelming if your codebase is large. I looked for alternatives to arrays but couldn't find any library.
So I coded it myself and it's been working good for me. So I wanted to share it with you all.
What does it do:
==================
If you are familiar with Python or Javascript, this library tries to immimate Object/Dictonary like structure with Key Value Pairs.
For Example:
object= {name:"John Doe", age: 28 , org: "PineCoders"}
And then it also tries to immitate the Array of Objects (I call it Stack)
like this:
stack= Array({name:"John Doe", age: 28 , org: "PineCoders"},
{name:"Adam Smith", age: 32 , org: "PineCoders"},
{name:"Paragjyoti Deka", age: 25 , org: "PineCoders"})
So there are basically two ideas: Objects and Stacks.
But it looks whole different in Pinescript for obvious reasons.
Limitation:
The major limitation I couldn't overcome was that, for all of the values: both input and return values for properties will be of string type.
This is due to the limiation of Pinecsript that there is no way to return a value on a if-else statement dynamically with different data types.
And as the input data type must be explicitly defined when exporting the library functions, only string inputs are allowed.
Now that doesn't mean you won't be able to use integer, float or boolens, you just need to pass the string value for it using str.tostring() method.
And the output for the getter functions will be in strings as well. But I have added some type conversion methods that you could use from this library itself.
From String to Float, String To Integer and String to Boolean: these three methods are included in this library.
So basically the whole library is based on a manipulatiion of Array of strings under the hood.
///////////////
Usage
///////////////
Import the library using this statement:
import paragjyoti2012/STR_Dict_Lib/4 as DictLib
Objects
First define an object using this method:
for eample:
object1= DictLib.init("name=John,age=26,org=")
This is similar to
object1= {name:"John",age:"26", org:""} in JS or Python
Just like we did here in for "org", you can set initital value to "". But remember to pass string values, even for a numerical properties, like here in "age".
You can use "age="+str.tostring(age). If you find it tedious, you can always add properties later on using .set() method.
So it could also be initiated like this
object= DictLib.init("name=John")
and later on
DictLib.set(object1,"age", str.toString(age))
DictLib.set(object1,"org", "PineCoders")
The getter function looks like this
age= DictLib.get(object1,"age")
name=DictLib.get(object1,"name")
The first argument for all methods .get, .set, and .remove is the pointer (name of the object).
///////////////////////////
Array Of Objects (Stacks)
///////////////////////////
As I mentioned earlier, I call the array of objects as Stack.
Here's how to initialize a Stack.
stack= DictLib.initStack(object1)
The .initStack() method takes an object pointer as argument. It simply converts the array into a string and pushes it into the newly created stack.
Rest of all the methods for Stacks, takes the stack pointer as it's first arument.
For example:
DictLib.pushStack(stack,object2)
The second argument here is the object pointer. It adds the object to it's stack. Although it might feel like a two dimentional array, it's actually an one dimentional array with string values.
Under the hood, it looks like this
////////////////////
Methods
////////////////////
For Objects
-------------------
init() : Initializes the object.
params: (string) e.g
returns: The object ( )
example:
object1=DictLib.init("name=John,age=26,org=")
...................
get() : Returns the value for given property
params: (string object_pointer, string property)
returns: string
example:
age= DictLib.get(object1,"age")
.......................
set() : Adds a new property or updates an existing property
params: (string object_pointer, string property, string value)
returns: void
example:
DictLib.set(object1,"age", str.tostring(29))
........................
remove() : Removes a property from the object
params : (string object_pointer, string property)
returns: void
example:
DictLib.set(object1,"org")
........................
For Array Of Objects (Stacks)
-------------------------------
initStack() : Initializes the stack.
params: (string object_pointer) e.g
returns: The Stack
example:
stack= DictLib.initStack(object1)
...................
pushToStack() : Adds an object at at last index of the stack
params: (string stack_pointer, string object_pointer)
returns: void
example:
DictLib.pushToStack(stack,object2)
.......................
popFromStack() : Removes the last object from the stack
params: (string stack_pointer)
returns: void
example:
DictLib.popFromStack(stack)
.......................
insertToStack() : Adds an object at at the given index of the stack
params: (string stack_pointer, string object_pointer, int index)
returns: void
example:
DictLib.insertToStack(stack,object3,1)
.......................
removeFromStack() : Removes the object from the given index of the stack
params: (string stack_pointer, int index)
returns: void
example:
DictLib.removeFromStack(stack,2)
.......................
getElement () : Returns the value for given property from an object in the stack (index must be given)
params: (string stack_pointer, int index, string property)
returns: string
example:
ageFromObject1= DictLib.getElement(stack,0,"age")
.......................
setElement() : Updates an existing property of an object in the stack (index must be given)
params: (string stack_pointer, int index, string property, string value)
returns: void
example:
DictLib.setElement(stack,0,"age", str.tostring(32))
........................
includesElement() : Checks if any object exists in the stack with the given property-value pair
params : (string stack_pointer, string property, string value)
returns : Boolean
example:
doesExist= DictLib.includesElement(stack,"org","PineCoders")
........................
searchStack() : Search for a property-value pair in the stack and returns it's index
params: (stringp stack_pointer, string property, string value)
returns: int (-1 if doesn't exist)
example:
index= DictLib.searchElement(stack,"org","PineCoders")
///////////////////////
Type Conversion Methods
///////////////////////
strToFloat() : Converts String value to Float
params: (string value)
returns: float
example:
floatVal= DictLib.strToFloat("57.96")
.............................
strToInt() : Converts String value to Integer
params: (string value)
returns: int
example:
intVal= DictLib.strToFloat("45")
.............................
strToBool() : Converts String value to Boolean
params: (string value)
returns: boolean
example:
boolVal= DictLib.strToBool("true")
.............................
Points to remember
...............
1. Always pass string values as arguments.
2. The return values will be of type string, so convert them before to avoid typecasting conflict.
3. Horses can't vomit.
More Informations
====================
Yes, You can store this objects and stacks for persisting through the iterations of a script across successive bars.
You just need to set the variable using "var" keyword. Remember this objects and stacks are just arrays,
so any methods and properties an array have it pinescript, would be applicable for objects and stacks.
It can also be used in security functions without any issues for MTF Analysis.
If you have any suggestions or feedback, please comment on the thread, I would surely be happy to help.
Elevated Leverage index System - ELiSELEVATED LEVERAGE index SYSTEM (ELiS) tries to solve the problem of adjusting meaningful leverage in futures and margin trading.
The biggest problem for traders is adjusting the leverage level manually.
Concerning about the volatilities it's very hard to set a meaningful leverage level.
ELiS includes 4 different volatility component which are:
1- nATR: Normalized Average True Range which is actually ATR/price to stabilize ATR's value differences when price changes are high on long term periods.
2- Standard Deviation
3- Kairi based nATR
4- Bollinger %B
which are scaled from 0 to 100 and takes different averages with different combinations & ratios and combines them as an index.
This index calculates an average volatility to set the true leverage level when trading futures especially in Crypto and FX markets.
There are 5 risk levels of "GEARS" like on automobiles to set the max leverage for risk management.
Gear 1 - CONSERVATIVE: max leverage level can be 20 for swing traders and beginners
Gear 2 - STANDARD: max leverage level can be 25 (default) for day traders
Gear 3 - AVERAGE: max leverage level can be 33 for day traders
Gear 4 - RISKY: max leverage level can be 50 for scalpers
Gear 5 - AGRESSIVE: max leverage level can be 100 for advanced scalpers
default length for ATR, Standard Deviation and %B are all 50
Simply:
When markets aren't volatile: ELiS indicateshigher leverage values to maximize profits.
When markets are volatile enough: ELiS indicates lower values to reduce risk level.
hope you all enjoy ELiS on profitable trades.
Strength Momentum IndicatorThis indicator is a fork of . It takes it a step further by including RSI and ADX information, which are represented in this indicator as follows:
MOM: The histogram itself is a linear regression curve, by default for the study period the Fibonacci series and exponential moving average were used. You can adjust the settings to your liking.
RSI: Whenever the RSI is outside the normal ranges (which you can adjust in the settings), the bar in the histogram will turn amber to warn you.
ADX: Crosses are drawn along the 0 line to indicate the ADX . Blue means that the ADX is below the trend level (adjustable in the settings), and orange means that it is above that level. Darker colors indicate that the ADX has risen from the previous bar, while lighter colors indicate that it has fallen.
Almost all of the normally adjustable values can be adjusted in the settings for each of the base indicators. Also adjustable:
The RSI alert levels (30 and 70 by default).
The ADX crossover, i.e. the point at which the ADX value is considered to indicate a strong trend (25 by default).
All colors, naturally.
AO Limit Signal===
AO Limit Signal supply Pending Price and Limit Order with detail as bellow
===
A.Buy Limit
1.Get Pending Price
+ Oscillator go into oversold zone
+ Pending price is lowest Low Price in (n) periods
+ (n) is fast periods of AO
2.Active Buy Limit
+ Oscillator go out oversold zone
+ Place Buy Limit at pending price
===
B.Sell Limit
1.Get Pending Price
+ Oscillator go into overbought zone
+ Pending price is highest High Price in (n) periods
+ (n) is fast periods of AO
2.Active Sell Limit
+ Oscillator go out overbought zone
+ Place Sell Limit at pending price
===
C.Oscillator
1.AO default parameter
+ Source: HL2
+ Fast Period: 25 H1
+ Slow Period: 75 H1
2.Overbought - Oversold Zone
+ AO's %b period: 80
+ AO's %b multiplier: 2.5
+ Overbought zone: AO's %b above 0.8
+ Oversold zone: AO's %b below 0.2
3.Color
+ Yellow dot: AO go into Overbought - Oversold Zone
+ Red dot: AO go out Overbought Zone
+ Green dot: AO go out Oversold Zone
===
ADX Heatmap & Di's + Fib Referencial by [JohnnySnow]For quicker and easier interpretation, ADX line is displayed in a heatmap style. The more absolute difference between both DIs, the more intense the color.
Because some people use 20 ADX reference and others use 25 ADX reference to confirm the trend, I just add both as reference lines in a 'golden box'
Additionally, reference lines were added with default values set to Fib levels
Daily Sun Flares Class AThe classification system for solar flares uses the letters A, B, C, M or X, according to the peak flux as measured at the Earth by the GOES spacecraft.
These are daily Class A sun flares. The data was created by counting daily flares of this class based on the peak time of the flare.
2015-01-01 until 2021-08-25
Daily Sun Flares Class BThe classification system for solar flares uses the letters A, B, C, M or X, according to the peak flux as measured at the Earth by the GOES spacecraft.
These are daily Class B sun flares. The data was created by counting daily flares of this class based on the peak time of the flare.
2015-01-01 until 2021-08-25
HarunoVolatility市場別のボラティリティを確認することができます。
確認できるボラティリティは東京、ロンドン、ニューヨークの3大市場です。
これら3つの市場の当日と5日、25日、75日の平均ボラティリティを画面へ表示します。
※注意点として、1時間足でないと正常に機能しません!
1時間足のみでご使用下さい。
customcandlesLibrary "customcandles"
customcandles: Contains methods which can send custom candlesticks based on the input
macandles(maType, length, o, h, l, c) macandles: Provides OHLC of moving average candles
Parameters:
maType : - Moving average Type. Can be sma, ema, hma, rma, wma, vwma, swma, linreg, median
length : - Defaulted to 20. Can chose custom length
o : - Optional different open source. By default is set to open
h : - Optional different high source. By default is set to high
l : - Optional different low source. By default is set to low
c : - Optional different close source. By default is set to close
Returns: : Custom Moving Average based OHLC values
hacandles() hacandles: Provides Heikin Ashi OHLC values
Returns: : Custom Heikin Ashi OHLC values
ocandles(type, length, shortLength, longLength, method, highlowLength, sticky, percentCandles) macandles: Provides OHLC of moving average candles
Parameters:
type : - Oscillator Type. Can be cci, cmo, cog, mfi, roc, rsi, tsi, mfi
length : - Defaulted to 14. Can chose custom length
shortLength : - Used only for TSI. Default is 13
longLength : - Used only for TSI. Default is 25
method : - Valid values for method are : sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
highlowLength : - length on which highlow of the oscillator is calculated
sticky : - overbought, oversold levels won't change unless crossed
percentCandles : - candles are generated based on percent with respect to high/low instead of actual oscillator values
Returns: : Custom Moving Average based OHLC values
Kitti-Playbook Fibonacci retracement GAGE R0.00
Release Notes: Oct 25 2021
OVERVIEW :Kitti-Playbook Fibonacci retracement GAGE R0.00
Easy for visualize Fibonacci retracement level
CONCEPTS
1)Minimum Line = Lowest level of Source form start
2)Maximum Line = Highest level of Source form New Low
3)Calculation
a) Fibonacci Retracement of 61.8% form Maximum level
b) Fibonacci Retracement of 78.6% form Maximum level
c) Fibonacci Retracement of 88.7% form Maximum level
d) Fibonacci Retracement of 94.2% form Maximum level
4)Information Display
a) Information Bar show Number of New Low , Max level , Min Level , Last Bar No, Current Pricel
b) GAGE Scale Number
c) New Low
RSI c/w MA, ADX and ATR data I have added 3 items to the RSI indicator which helps me to get more information at the same time.
1) ADX value - when ADX is above 25 we have a strong trend
2) ATR Value - helps me to calculate my daily targets and stop-loss levels at a glance.
3) A simple moving average - This shows me the trend of RSI. If the price breaks a trend line and at the same time RSI crosses above the MA, it shows me a breakout has happened. In longer timeframes, it can show you in advance if you should expect a reversal in the trend.
You can turn on or off the MA as well as the ADX line.
Supertrend + Stoch StrategyA strategy using ema , supertrend and stochastic .
Long entry conditions:
1. EMA 25 > EMA 50 and EMA 100 > EMA 100.
2. Supertrend indicator is green.
3. Stochastic k line cross over d line.
Long stop: the lowest price of the last k
MACD With Crossings and Above Below ZeroMACD with MACD Derivative, Crossings Above and Below Zero, Shading for ADX Smoothing and Overlayed RSI
Primarily a moving average convergence divergence (MACD) momentum indicator. Also includes a MACD Derivative overlay to show when momentum has peaked. Displays triangle symbols when the MACD line crosses the signal line (larger triangle when MACD crosses above/below zero to indicator stronger momentum trend). Includes shading for average directional index (ADX) to futher determine when the price is trending strongly (red when the ADX value is greater than 25, and idicating a strong trend; otherwise blue). Lastly, has a relative strength index (RSI) momentum indicator overlayed to help evaluate periods of overbought or oversold conditions.
Rising ADX strategyI have always been a huge fan of ADX. Its good for finding out good trending moves.
But it has been said that only ADX after 20 or 25 is good for trending market, but few trend gets completed at that level.
So I have come up with a logic to find out the rising ADX. This could be used to determine the trending moves from the start.
Buy signal:
When close is greater than moving average 1 and 2. This moving average can be SMA, EMA, WMA or HMA.
When ADX is greater than the threshold range. I have taken 10 as my minimum range.
Of course important of all ADX should be rising which implies trend is about to start.
Buy exit:
When close is less than moving average 1 and 2. This moving average can be SMA, EMA, WMA or HMA.
When ADX is lesser than the threshold range. I have taken 10 as my minimum range.
ADX falling which implies trend is about to end.
Sell signal:
I don't repeat the above logic again.
Everything similar to buy signal except above moving average. For selling it should be below moving average.
Strategy can be tested for long and short sides.
Note: No Repainting as the logic is very simple.
Using this script we can identify the best timeframe the script trend yields profit.
Test and provide your comments.