This tool analyzes the relative size of volume reported on intraday vs EOD (end of day) data feeds on historical bars. If you use volume data to make trading decisions, it can help you improve your understanding of its nature and quality, which is especially important if you trade on intraday timeframes.
I often mention, when discussing volume...
functions to handle vector2 operations.
math_fractional(_value) computes the fractional part of the argument value.
_value : float, value to compute.
Returns: float, fractional part.
atan2(_a) Approximation to atan2 calculation, arc tangent of y/ x in the range radians.
_a : vector2 in the...
Draws lines for each of up to 500 prices that have never been revisited at the present moment in time, as time progresses these levels may or may not hodl.
Adaptation of "Never Look Back Price" originally described by Timothy Peterson in his research paper entitled "Why Bitcoin's Price Is Never Looking Back".
For more information see:...
Color Extension methods.
hsl(hue, saturation, lightness, transparency) HSL color transform.
hue : float, hue color component, hue is a degree on the color wheel from 0 to 360. 0 is red, 120 is green, 240 is blue.
saturation : float, saturation color component, saturation is a percentage value, 0 means a shade of...
Pullbacks are always hardest part of the trade and when it happen, we struggle to make decision on whether to continue the trade and wait for recovery or cut losses. Similarly, when an instrument is trending well, it is often difficult decision to make if we want to take some profit off the table. This indicator is aimed to make these decisions easier by providing...
Methods to count number of elements in arrays
count_float(sample, value) Counts the number of elements equal to provided value in array.
sample : float array, sample data to process.
value : float value to check for equality.
count_int(sample, value) Counts the number of elements...
This indicator displays a realtime profile that can be configured to visualize five dimensions: volume, price, time, activity and age. For each price level in a bar or timeframe, you can display total or delta volume or ticks. The tick count measures activity on a level. The thickness of each level's line indicates its age, which helps you identify...
Functions in this library creates/updates zigzag array and shows the zigzag
getZigzag(zigzag, prd, max_array_size) calculates zigzag using period
zigzag : is the float array for the zigzag (should be defined like "var zigzag = array.new_float(0)"). each zigzag points contains 2 element: 1. price level of the zz...
Presented here is code for the "Moving Average Difference, Hann" indicator originally conceived by John Ehlers. The code is also published in the November 2021 issue of Trader's Tips by Technical Analysis of Stocks & Commodities (TASC) magazine.
By employing a Hann windowed finite impulse response filter (FIR), John Ehlers...
This is zigzag based double top/bottom indicator. Code is same as : Double-Top-Bottom-Ultimate
But, republishing it to make it available open source.
Recognition - Checks on Zigzag if LH is followed by HH
Confirmation - When low crosses under last lower pivot point on zigzag
Invalidation - When high crosses over HH
Collection of all custom and enhanced TA indicators
ma(source, maType, length) returns custom moving averages
source : Moving Average Source
maType : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow
length : Moving Average Length
Returns: moving average for the given type and length
This indicator displays a fan using a linear regression fit to the price as a base. All lines are equidistant and are drawn from the first point of the linear regression to the most recent point of the linear regression plus the root-mean-square deviation (RMSD) multiplied by a certain factor.
Length: Lookback period for the linear regression.
K-Means Clustering Method.
nearest(point_x, point_y, centers_x, centers_y) finds the nearest center to a point and returns its distance and center index.
point_x : float, x coordinate of point.
point_y : float, y coordinate of point.
centers_x : float array, x coordinates of cluster centers.
E() The number e
Log2E() The number log (e)
Log10E() The number log (e)
Ln2() The number log (2)
Ln10() The number log (10)
LnPi() The number log (pi)
Ln2PiOver2() The number log (2*pi)/2
InvE() The number 1/e
SqrtE() The number sqrt(e)
Sqrt2() The number sqrt(2)
Sqrt3() The number...
I suppose nothing drives a point home like a 10+ year backtest! A couple of weeks ago I published a custom indicator called the Cumulative RSI. This indicator was straight out of chapter 9 of "Short Term Trading Strategies That Work." Today I am publishing a basic sample strategy in that uses the Cumulative RSI as its only entry and exit signals on a Nasdaq 100...
Functions to extend Arrays.
index_2d_to_1d(dimension_x, dimension_y, index_x, index_y) returns the flatened one dimension index of a two dimension array.
dimension_x : int, dimension of X.
dimension_y : int, dimension of Y.
index_x : int, index of X.
index_y : int, index of Y.
Returns: int, index in 1...
polyreg(sample_x, sample_y) Method to return a polynomial regression channel using (X,Y) sample points.
sample_x : float array, sample data X points.
sample_y : float array, sample data Y points.
Returns: tuple with:
_predictions: Array with adjusted Y values.