B.Bands | Augmented | Intra-range | Long-OnlyHere you have the essential trading engine based on Bollinger Bands .
The idea behind is to trade the intra-range of the bands.
How is going to work?
Define which Bollinger Bands we want to use. Classic Bollinger Bands or Augmented Bollinger Bands . Without selecting, the algorithm doesn't show a strategy.
Define the length of the Moving Average and the Standard Deviation by default the classic 20-2.
Define the Bollinger Bands Spread Max Range (Upper-Lower) to be able to determine wheter or not you're in a price range or potential breakout.
Define data source to trigger exit and entry points.
Define profit based on Middle Band or Opposite Band.
Define Stop Loss % and activate Trailing Stop if desired with the percentage required.
Determine if you want to sell only on profit after triggering the entry signal. * Note Stop Loss remains activated.
Choose a date range if you want to study a specific period.
Bear in mind, this is the essential trading engine, open for you to test, try and improve under your requirements. You can determinate when is the ideal market to implement it based on many other indicators. Maybe you wish to change the stop loss settings for ATR, previous low, etc. Totally up to you.
Note the script comes with initial capital, fee % and slippage by deault. This may change for your assets. Make sure you define it in advance.
NOTE: If you trade assets such BTC, you must update the initial capital. By default 5000 (USD) The script doesn't support fraction trading such 0.01BTC.
Will be updated on next version.
Feel free to get in touch if you've got any question.
ค้นหาในสคริปต์สำหรับ "algo"
Cloud Ribbon ++ by [JohnnySnow]Inspired by my favorite EMA ribbon - "EMA Ribbon " by fskrypt.
This Ribbon ADD the option to choose the avarage algorithm of the ribbon .
Created also to be more friendly to read along with trendlines and Fibonacci retracements.
For those like me that NOT use this ribbon to find exact price action but instead, to have a grasp of possible Support/Resistance strenght ahead.
High transparency lines and a configurable color palette for filling the background give the ribbon a look of support/ Resistance cloud Strenght.
Each MA length, line, and background color can be easily configured.
RedK Auto-Stepping Ladder TraderThe RedK Auto-Stepping Ladder Trader is an experimental tool to help identify trade entry and exits for various types of trades (Trend / Momentum / Breakout and Swing trades)
The underlying concept here is loosely similar to the SMAC script - in case you'd like to read some of the "script-specific" write-up . I even borrowed some of the SMAC code, but upgraded the script to Pine v5 while working. So i won't repeat write-up here on how the script works - and we'll get right into how to use in trading
How to use / trade the Ladder Trader:
-------------------------------------------------
The idea is to set the auto-stepping ladder to a higher timeframe, the "ladder view" helps simplify the price action to show a clear direction, then use the lower timeframe to find best entries (close or at the ladder line) and exits (on the ATR as TP target)
- Entries should be as close to the ladder line as possible - a trader may decide to have a small margin above or below the ladder line where they set entry limit order
- note that when stepping is enabled, the auto-stepping algo will choose the step value based on the underlying price range and the selected timeframe to move with common trader "mental values" where traders will usually gravitate
- exits can be set using the optional ATR or Pct channels - by default, there's an ATR channel (golden color) for that purpose
Possible usage scenarios of the Ladder Trader:
--------------------------------------------------------------
- Trend / long(er) term: enter position once the ladder line switches to the color corresponding to my desired direction (example: blue for long), and hold all the way until the color changes
- Swing: Take only trades in the direction of the ladder (long with blue, short with orange) - enter at the ladder line value, set TP at the desired ATR, repeat as long as the direction holds
- Feel free to experiment and share back other uses you find. There are so many settings and tweaks provided for flexibility - the downside is this adds a certain level of complexity - however, i hope this will be a valuable tool to add to your trading.
Few Notes:
-----------------------
- The Auto-stepping algo is a bit improved to be more FOREX and Crypto-friendly - i do not trade these instruments myself, but will continue to improve the auto-stepping technique in upcoming updates
- the signal line (hidden by default, and is what causes the ladder to change color) is based on my Compound Ratio Moving Average - since it's the moving average i found to provide best combination of speed and smoothness. It is used as a proxy to the price, to signal when the price is above or below the ladder level - while removing some of the whipsaws if we use the price value directly.
- Broader analysis of price action should still be made using other indicators - and possibly other chart setups - we shouldn't rely on the Ladder Trader signal only - Check for overall momentum, volume movement and market sentiment before using the Ladder Trader
- Also test your settings in PaperMoney - i noticed that different instruments may need different settings (for Ladder Type, Length, Rounding Technique, ATR multiplier..etc) for optimal setup that shows best signals.. Get very familiar with the Ladder Trader and it should hopefully become more helpful to you as a tradiing tool.
Comments and Feedback are welcome. Good luck.
Ranging Market Detector [AstrideUnicorn]Determining if the market is in a trend or a range regime is a very complex problem. And knowing the answer can be, in some situations, the real holy grail. If the trader knows when the market is in a range regime, they can avoid overtrading and make moving average crossover strategies more profitable. A regime switch from a trend to a range can be a signal to close open positions. It can also be helpful when trading such instruments as short-term binary options. When the market is ranging directional moves are not expected, and the trader should be careful as opening a position in such conditions is, by some degree, a random outcome game. Range breakouts trading is one more example when knowing the market regime is critical.
We have created an indicator that predicts the current market regime. It smooths the price using the Kalman filter and analyzes the curve's slope. If the absolute value of the slope is low, then the market is in range mode and vice versa. To distinguish between the two regimes, the algorithm compares the absolute value of the slope with its long-term average.
HOW TO USE
The indicator shows the difference between the absolute slope value and its long-term average as a histogram. When a bar of the histogram is higher than the threshold level presented by the red line, the market is in a trending regime. In this regime, the background of the indicator is blue. When the market is in a range regime, the indicator background turns red.
The threshold level helps to control the lag. The greater it is, the more lagging the indicator will be. By default, this value is set to a negative value. It means that the indicator switches from range to trend a little bit earlier than the slope gets higher than the average slope. You can use the value of zero or low negative values to find the optimal tradeoff between the strength of the signals and their lag.
SETTINGS
The indicator has one input parameter called Threshold. It sets the threshold level described above. Its value should be close to zero. The less the value is, the less is the indicator's lag, but at the same time, the less confirmed the regime-switching signals are.
The use cases can be very different. And as the code is open, you can also use the indicator as a building block for your custom trading strategies.
Let us know your thoughts and suggestions!
40 crypto screener [LUPOWN]// ENGLISH
This indicator shows two tables, with 10 assets each, they can be currencies, stocks or cryptos, the columns can be changed to the information you want to see, among the options are price or change (change in percentage of the candle in the temporality where you are seeing it), TL are buy or sell signals according to the Latin trading strategy (Squeeze momentum combined with ADX) buy if the momentum changes to range or rise and the ADX has a negative slope, sell if the momentum changes to range or fall and The ADX has a negative slope, the signals are not 100% effective, you must support it with price action and market speculation, directionality in the momentum, slope of the ADX, if there is divergence in the momoentum squeeze, lux something and cipher use an indicator of Lazy bear, lux something signals when two wave trends cross and the cipher signals when the wave trend crosses above or below the 0 point.
You can choose between seeing one or two tables, this so that it can be seen on small screens, there is also the option to hide the tables and show the label, which is also an alternative to see it on small screens
i got the main idea from @QuantNomad
//SPANISH
Este indicador muestra dos tablas, con 10 activos cada una, pueden ser divisas, acciones o cryptos, las columnas se pueden cambiar a la información que quieras ver, entre las opciones están precio o cambio (cambio en porcentaje de la vela en la temporalidad donde lo estes viendo), TL son señales de compra o venta según estrategia de trading latino (Squeeze momentum combinado con ADX) compra si el momentum cambia a rango o subida y el ADX tiene pendiente negativa, venta si el momentum cambia a rango o caída y el ADX tiene pendiente negativa, las señales no son 100% efectivas debes apoyarla con la acción del precio y especulación del mercado, direccionalidad en el momentum, pendiente del ADX, si hay divergencia en el squeeze momoentum, lux algo y cipher utilizan un indicador de Lazy bear, lux algo da señal cuando dos wave trend se cruzan y el cipher da señal cuando el wave trend cruza por encima o debajo del punto 0.
Puedes elegir entre ver una o dos tablas, esto para que se pueda ver en pantallas pequeñas, también esta la opción de ocultar las tablas y mostrar el label, que también es una alternativa para verlo en pantallas pequeñas
La idea principal la tome de @QuantNomad
MomentumSignalsLibrary "MomentumSignals"
Contains utilities varying algorithms for detecting key changes in momentum. Note: Momentum is not velocity and should be used in conjunction with other indicators. A change in momentum does not mean a reversal of velocity or trend.
simple(primary, secondary, len) Compares two series for changes in momentum to derive signal values.
Parameters:
primary : The primary series (typically a moving average) to look for changes in momentum.
secondary : The secondary series (typically derived moving average of the primary) to use as a comparison value.
len : The number of bars to measure the change in momentum.
filtered(primary, secondary, len, stdlen, stdMultiple) Compares two series for changes in momentum to derive signal values. Uses statistics to filter out changes in momentum.
Parameters:
primary : The primary series (typically a moving average) to look for changes in momentum.
secondary : The secondary series (typically derived moving average of the primary) to use as a comparison value.
len : The number of bars to measure the change in momentum.
stdlen : The number of bars to measure the change in momentum for filtering.
stdMultiple : The multiple of the change in momentum to use before reversiing.
special(primary, secondary, stdlen, stdMultiple) Compares two series for changes in momentum to derive signal values. Uses statistics to filter out changes in momentum. Does not signal when likely overbought or oversold.
Parameters:
primary : The primary series (typically a moving average) to look for changes in momentum.
secondary : The secondary series (typically derived moving average of the primary) to use as a comparison value.
stdlen : The number of bars to measure the change in momentum for filtering.
stdMultiple : The multiple of the change in momentum to use before reversiing.
MomentumLibrary "Momentum"
Contains utilities varying algorithms for measuring momentum.
simple(fast, slow, src, fastType, slowType) Derives momentum from two moving averages of different lengths.
Parameters:
fast : The length of the fast moving average.
slow : The length of the slow moving average.
src : The series to measure from. Default is 'close'.
fastType : The type of moving average the fast should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
slowType : The type of moving average the slow should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
stochRSI(fast, fast, rsiLen, stochLen, src, kmode) Returns the K and D values of a Stochastic RSI. Allows for different moving averages to produce the K value.
Parameters:
fast : The length to average the stochastic.
fast : The length to smooth out K and produce D.
rsiLen : The length of the RSI.
stochLen : The length of stochastic.
src : The series to measure from. Default is 'close'.
kmode : The type of moving average to generate. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
Returns:
macd(fast, slow, signal, src, fastType, slowType, slowType) Same as well-known MACD formula but allows for different moving averages types to be used.
Parameters:
fast : The length of the fast moving average.
slow : The length of the slow moving average.
signal : The length of average to applied to smooth out the signal.
src : The series to measure from. Default is 'close'.
fastType : The type of moving average the fast should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
slowType : The type of moving average the slow should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
slowType : The type of moving average the signal should use. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
Returns:
benchLibrary "bench"
A simple banchmark library to analyse script performance and bottlenecks.
Very useful if you are developing an overly complex application in Pine Script, or trying to optimise a library / function / algorithm...
Supports artificial looping benchmarks (of fast functions)
Supports integrated linear benchmarks (of expensive scripts)
One important thing to note is that the Pine Script compiler will completely ignore any calculations that do not eventually produce chart output. Therefore, if you are performing an artificial benchmark you will need to use the bench.reference(value) function to ensure the calculations are executed.
Please check the examples towards the bottom of the script.
Quick Reference
(Be warned this uses non-standard space characters to get the line indentation to work in the description!)
```
// Looping benchmark style
benchmark = bench.new(samples = 500, loops = 5000)
data = array.new_int()
if bench.start(benchmark)
while bench.loop(benchmark)
array.unshift(data, timenow)
bench.mark(benchmark)
while bench.loop(benchmark)
array.unshift(data, timenow)
bench.mark(benchmark)
while bench.loop(benchmark)
array.unshift(data, timenow)
bench.stop(benchmark)
bench.reference(array.get(data, 0))
bench.report(benchmark, '1x array.unshift()')
// Linear benchmark style
benchmark = bench.new()
data = array.new_int()
bench.start(benchmark)
for i = 0 to 1000
array.unshift(data, timenow)
bench.mark(benchmark)
for i = 0 to 1000
array.unshift(data, timenow)
bench.stop(benchmark)
bench.reference(array.get(data, 0))
bench.report(benchmark,'1000x array.unshift()')
```
Detailed Interface
new(samples, loops) Initialises a new benchmark array
Parameters:
samples : int, the number of bars in which to collect samples
loops : int, the number of loops to execute within each sample
Returns: int , the benchmark array
active(benchmark) Determing if the benchmarks state is active
Parameters:
benchmark : int , the benchmark array
Returns: bool, true only if the state is active
start(benchmark) Start recording a benchmark from this point
Parameters:
benchmark : int , the benchmark array
Returns: bool, true only if the benchmark is unfinished
loop(benchmark) Returns true until call count exceeds bench.new(loop) variable
Parameters:
benchmark : int , the benchmark array
Returns: bool, true while looping
reference(number, string) Add a compiler reference to the chart so the calculations don't get optimised away
Parameters:
number : float, a numeric value to reference
string : string, a string value to reference
mark(benchmark, number, string) Marks the end of one recorded interval and the start of the next
Parameters:
benchmark : int , the benchmark array
number : float, a numeric value to reference
string : string, a string value to reference
stop(benchmark, number, string) Stop the benchmark, ending the final interval
Parameters:
benchmark : int , the benchmark array
number : float, a numeric value to reference
string : string, a string value to reference
report(Prints, benchmark, title, text_size, position)
Parameters:
Prints : the benchmarks results to the screen
benchmark : int , the benchmark array
title : string, add a custom title to the report
text_size : string, the text size of the log console (global size vars)
position : string, the position of the log console (global position vars)
unittest_bench(case) Cache module unit tests, for inclusion in parent script test suite. Usage: bench.unittest_bench(__ASSERTS)
Parameters:
case : string , the current test case and array of previous unit tests (__ASSERTS)
unittest(verbose) Run the bench module unit tests as a stand alone. Usage: bench.unittest()
Parameters:
verbose : bool, optionally disable the full report to only display failures
Stochastic RSI Heat Candles OverlayThis script is based on the Stochastic RSI indicator.
Candles are dynamically colored with a customizable RGB shading directly generated from the average Stochastic RSI current value.
By default, colors represent the following status -> green is overgought & red is oversold.
Options:
Shading colors: Choose between Red/Green, Green/Blue, and Blue/Red shadings to represent the SRSI heat.
Invert colors: Switch colors of the selected shading.
Third color: Select a value from 0 to 255 for the third color which does not vary.
Transparency: Select the transparency value.
Overlay style : Choose to color the whole candle, or only borders and wick.
Show candle side: If you choose to fully fill candles with the SRSI heat color , enable this option to plot shapes representing the candles directions.
Candle marks colors: Select bull and bear colors for direction shapes.
Overbought and Oversold situations are also represented by colored shapes at the top of the chart.
Standards Stochastic RSI parameters.
Examples:
Notes:
Do not forget to bring the script to the front of your chart to avoid being covered by default candles.
Next improvements would probably be a better coloring algorithm, however, do not hesitate to suggest any modifications in comments.
Initially, I shared a Stochastic RSI Heat Bollinger Bands indicator which gave me the idea to develop this one, you can find it on my profile.
Ehlers Mesa Spectrum Dominant Cycle [CC]The Mesa Spectrum Dominant Cycle was created by John Ehlers and this is the foundation for many indicators he created that would later follow. This is his updated version of his original Mesa algorithm and I do not recommend this indicator as a stand alone for trading. This is more of an informational indicator that will tell you the current dominant cycle period which is the approximate period between peaks and valleys in the underlying data. I have color coded buy signals just in case with both strong and normal signals. Darker colors are strong and lighter colors are normal. Buy when the line is green and sell when it is red.
Let me know if there are any other indicators you would like to see me publish!
FFTLibraryLibrary "FFTLibrary" contains a function for performing Fast Fourier Transform (FFT) along with a few helper functions. In general, FFT is defined for complex inputs and outputs. The real and imaginary parts of formally complex data are treated as separate arrays (denoted as x and y). For real-valued data, the array of imaginary parts should be filled with zeros.
FFT function
fft(x, y, dir) : Computes the one-dimensional discrete Fourier transform using an in-place complex-to-complex FFT algorithm . Note: The transform also produces a mirror copy of the frequency components, which correspond to the signal's negative frequencies.
Parameters:
x : float array, real part of the data, array size must be a power of 2
y : float array, imaginary part of the data, array size must be the same as x ; for real-valued input, y must be an array of zeros
dir : string, options = , defines the direction of the transform: forward" (time-to-frequency) or inverse (frequency-to-time)
Returns: x, y : tuple (float array, float array), real and imaginary parts of the transformed data (original x and y are changed on output)
Helper functions
fftPower(x, y) : Helper function that computes the power of each frequency component (in other words, Fourier amplitudes squared).
Parameters:
x : float array, real part of the Fourier amplitudes
y : float array, imaginary part of the Fourier amplitudes
Returns: power : float array of the same length as x and y , Fourier amplitudes squared
fftFreq(N) : Helper function that returns the FFT sample frequencies defined in cycles per timeframe unit. For example, if the timeframe is 5m, the frequencies are in cycles/(5 minutes).
Parameters:
N : int, window length (number of points in the transformed dataset)
Returns: freq : float array of N, contains the sample frequencies (with zero at the start).
Bollinger band & Volume based strategy V2this script is upgraded version of previous one the major change is deleted script which find a highest price after entry the last of strategy is same.
If current volume is above daily average volume, and three bollinger band`s Standard Deviation, 1 and 1.5 and 2 if the current lowest price is bigger then 1 stdev and current closed is bigger then 1.5 stdev and the last,highest price is above 2.0 stdev, it defined current market is bullish and had momentum.
and the Short will entered when ma60 and ma120 is undercrossed it work as prevent current price is way lower then entry price.
**this script is working in 15min Only in BTC market or USDT**
** basic equity setting is 500$, set your own**
**if you will use this in real-trade,plz comment the result to me**
Ps: i wanna know why my script is only working well in 15 min tick, anyone who has similar phenomenon or if you had a answer about it, please comment me.
StringEvaluationLibrary "StringEvaluation"
Methods to handle evaluation of strings.
is_comma(char) Check if char is a comma ".".
Parameters:
char : string, 1 character string.
Returns: bool.
is_op(char) Check if char is a operator.
Parameters:
char : string, 1 character string.
Returns: bool.
number(char) convert a single char string into valid number.
Parameters:
char : string, 1 character string.
Returns: float.
operator(op, left, right) operation between left and right values.
Parameters:
op : string, operator string character.
left : float, left value of operation.
right : float, right value of operation.
operator_precedence(op) level of precedence of operator.
Parameters:
op : string, operator 1 char string.
Returns: int.
cleanup(_str) Evaluate a string to clean up and retrieve only used chars
Parameters:
_str : string, arithmetic operations in a string.
Returns: string array, evaluated array.
generate_rpn(tokens) uses Shunting-Yard algorithm to generate a RPN (Reverse Polish notation)
array of strings from a array of strings containing arithmetic notation.
ex:.. ' ' --> ' '
Parameters:
tokens : string array, array with arithmetic notation.
Returns:
parse_rpn() evaluate a RPN (Reverse Polish notation) array of strings.
ex:.. 3 4 2 * 1 5 - 2 3 ^ ^ / +
| @param tokens string array, RPN ordered tokens, ex( ).
| @returns float, solution.
eval() evaluate a string with references to a array of arguments.
| @param tokens string, arithmetic operations with references to indices in arguments, ex:"0+1*0+2*2+3" arguments
| @param arguments float array, arguments.
| @returns float, solution.
Linear SSL ShortThis script consist of two parts: linear SSL and DEMA. The difference between original SSL and current is that it calculated by linear regression. The logic is simple: when SSL "crossunder" and DEMA is above the price - we get short signal. When price became above DEMA and SSL "crossover" - close short.
MovingAveragesLibrary "MovingAverages"
Contains utilities for generating moving average values including getting a moving average by name and a function for generating a Volume-Adjusted WMA.
vawma(len, src, volumeDefault) VAWMA = VWMA and WMA combined. Simply put, this attempts to determine the average price per share over time weighted heavier for recent values. Uses a triangular algorithm to taper off values in the past (same as WMA does).
Parameters:
len : The number of bars to measure with.
src : The series to measure from. Default is 'hlc3'.
volumeDefault : The default value to use when a chart has no (N/A) volume.
Returns: The volume adjusted triangular weighted moving average of the series.
getMA(mode, len, src) Generates a moving average based upon a 'mode'.
Parameters:
mode : The type of moving average to generate. Values allowed are: SMA, EMA, WMA, VWMA and VAWMA.
len : The number of bars to measure with.
src : The series to measure from. Default is 'close'.
Returns: The volume adjusted triangular weighted moving average of the series.
MACD AdvancedHello traders!
As you know, MACD is one of the oldest and the most popular indicators for trading. It seems to be a «Hello world indicator» of most technical analysis beginners. It’s easy to interpret and rather useful for many styles of trading. There are many arguments about its accuracy but in my opinion, this indicator can show very good results. However, you should squeeze every drop of its opportunities and we'll help you with it. We invented this script to make the lives of both professionals and freshmen easier.
Our new indicator uses all the opportunities that MACD gives. It takes into consideration divergencies, crossovers, the MACD, and signal line location. It seems to be rather difficult to take into consideration all MACD signals when you don’t use algorithmic trading, but it’ll be trivial using our script. We have integrated some innovations that’ll make traders’ staff easier. As you know, the crossover is considered to be a false signal in conjunction with hidden divergence which predicts another movement. Thus, we catch all types of divergencies and if it’s hidden of another «value» we skip it. However, if there's a crossover with bullish divergence or cross under with bearish, the signal seems to be strong and accurate. In this case, divergence is playing for us and makes the point of entrance more trustable. Our script takes into consideration this case and the innovative divergence chaser doesn’t give any mistakes. Moreover, if crossover takes place above zero line and crosses under bellow it, these signals are considered to be false too. It’s a trivial task comparing with the previous, thus it’s extremely simple for our script. We called it MACD Advanced cause it uses all the power of MACD with the power of invasive divergence chasers. The usage of it is trivial. Just add it to the chart, tune the parameters like MACD and tune the divergence chaser and get very accurate signals. We decided not to draw the bars to make signals more visible. It seems to be very nice!
I hope guys you'll enjoy it and it'll become a part of your trading staff.
Matrix Altcoin Perpetual A-BIt is collection of RSI values for following group of altcoins which are listed as perpetual.
1INCHUSDT
AAVEUSDT
ADAUSDT
AKROUSDT
ALGOUSDT
ALICEUSDT
ALPHAUSDT
ANKRUSDT
ATAUSDT
ATOMUSDT
AUDIOUSDT
AVAXUSDT
AXSUSDT
BAKEUSDT
BALUSDT
BANDUSDT
BATUSDT
BCHUSDT
BELUSDT
BLZUSDT
BNBUSDT
BTSUSDT
BTTUSDT
BZRXUSDT
Color Codes:
Dark Green : RSI increases from last closure
Light Green : RSI increases from last two closure consecutively
Dark Red : RSI decreases from last closure
Light Red : RSI decreases from last two closure consecutively
Idea originator is @MetinCakir.
Thx for his great work. All rights permissions had been taken from originator.
SQZ Multiframe StrategyThis is a first attempt to automate what my current strategy when trading is.
It uses 2 timeframes: the one you are currently using to see the chart and an "anchor trend" which is a higher order frame.
Supported timeframes are: 1m, 5m, 15m, 30m, 1H, 4H, 1D, 1W
The Strategy relies on two indicators:
Squeeze Momentum Indicator
CMF
How does it works?
It looks for a moment when the following conditions are met.
For Long:
Positive directionality in SQZM monitor in anchor timeframe
Positive directionality in SQZM monitor in current timeframe
Recent minimum in CMF
For Short:
Negative directionality in SQZM monitor in anchor timeframe
Negative directionality in SQZM monitor in current timeframe
Recent maximum in CMF
After a BUY or SELL order is executed the plot will start showing two lines: A TP line, and a SL line.
The TP and SL move dynamically based on a greedy algorithm based on 3 input parameters.
Min Profit to Start Moving SL (%): Sets an initial target for the trade.
Maximum Possible of SL (%): This is the maximum amount possible for SL. If volatility is not too high, a shorter SL will be chosen based on Kaufman's Stops method
Take profit factor: Is how much portion of the target I am taking as profit once the target is reached
Example for 5% Min profit:
When the first target is reached (+5%), the SL will be updated to 2.5% over the enter price.
When the second target is reached (+10%), the SL will be updated to 5% over the enter price.
Note: The strategy might abandon the position prematurely if a contrary signal is received while the trade is opened, and will change direction.
The Strategy has been backtested mostly for crypto. It might be good for stocks too, but the parameters mentioned might need some adjustments since price moves at a different rate.
Recommended timeframe is 4H for BTC , and 30min/1H for alts.
Comments and ideas are more than welcome!
RebalancingThis script gives you an approximation of the APR you can get when using the technique of Rebalancing.
Further discription are embeded in the script.
HOW TO USE:
- Start date: Choose start date
- Settings: Change settings to your own needs
- Base currency: Select Base currency
- Portfolio: Select the coins (MAX 9 pcs.) you want to use in your portfolio for the rebalancing algoritm
- Click "Data Window" to see the APR (appr.)
Markets:
It can be used to all markets.
NOTE:
Some Exchanges don't go very far back in the past and for this reason this may have impact on this Indicator.
Make sure the coins you selected are available at the Exchange you select in the settings section. If you dont do this, the script generates an error.
Engulfing Candle Rejection IndicatorThis indicator allows you to filter noisy chart, with engulfing candles which have been rejected from current trend lines. Trend lines by default are 21 MA (fast) and 10 MA (slow one). If fast moving average is greater than slower one, automatically indicator would represent that like uptrend, and if opposite then like a downtrend.
Consider to work only on higher time frames like 1H and higher, so you really can find only best entries.
Have fun, best wishes!
Light BalanceThe script is simple, going for a color scheme logic which tenderly avoids rigorous signals processing.
For the script to remain simple, logical derivatives are also out; as such, there are no secondary relations built off of primary ones. And it also ignores (unless you do this yourself) the logic in a varying order of lines.
Coloring has been done according to a limited set of relations between the four (4) plotted lines.
Quite a bit of information is capture, as you'll see when looking at line order, crossings, and transparency transitions and their patterns.
The approach makes the relations ones which can be learned over time; you become the algorithm to sort out signals. Ha ha. I know that sounds like a cop out doesn't it. Did I mention it's a simple script?
One thing you might want to play with right away are fills having red and green, and lime and fuchsia. It would be cool to reduce it all down to two (2) colors, but all the boolean relations might have to be listed, and it also may not be possible to cumulatively combine transparency overlays of the same value. Visually, that approach may not result to awaken a useful feature anyway. Also, fill() has its limitations in that it cannot be in a local scope; this includes function wrapped calls to fill(), or calls made using branching logic statements if/elseif, iff(), and var = (cond) ? t_val/exp : f_val/exp. So, to my knowledge, a fill() can not be made to be logically on/off.
Please, enjoy getting some use out of it.
Hull Crossover Strategy no TP or SLWhat is it?
A simple yet effective strategy ran on the 30m chart.
This is a basic idea that can be expanded on using different indicator to either add signals or filter out certain bad signals!
The strategy consists of 1 fast moving average and 1 slow moving average.
Both of these moving averages are the Hull Moving Average
What is the Hull Moving Average?
The Hull Moving Average ( HMA ) is a directional trend indicator.
It captures the current market conditions and uses recent price action to determine if conditions are bullish or bearish relative to historical data.
The Hull is different from traditional trend indicators like the EMA and the SMA .
It is designed to reduce the lag often associated with other MAs by providing a faster signal on a smoother visual plane.
How it works?
When the fast HMA crosses over the slow HMA , we initiate a long signal, and
when the fast HMA crosses under the slow HMA , we initiate a short signal.
Conclusion
The power of simplicity is what makes this such a great core to use to build onto making something even better!
The results were optimised to suit the most common market conditions seen today.
******** Not financial advice! ********