Ganntime Grid Bot Long Strategy with frostybotThe grid strategy customized specifically for Frostybot. It use the tradingview webhook implement the safe orders mechanism of 3commas, and different position sizes can be selected according to the market direction. Currently, only long is supported.the default configration is suitable for some pair.but you can change it by yourself. Everyone is welcome to experience.
GRID
Grid bot development I have completed the next stage of my grid bot which is to isolate the instances in which the market will move sideways in a narrow range.
Rudimentary Grid bot ideaUsing Eulerian principles yet again, this is the beginning of my first grid bot script. Use as static S&R when trading manually. Good for SL and TP setting too.
Horizontal Plot Lines - Max. 24 - grid strategy - DARK LINESWhen I looked for something like this I couldn't find it. Although simple in appearance, this script was actually quite long and complicated to create. It allows you to break up any horizontal space in up to 24 lines. Just remember that 13 lines equal 12 levels, as the top and bottom lines are the placeholders. So, if you are using quarters theory, you would want to select 5 lines.
It automatically sets the top line at a user-selectable place, like the close of the highest candlestick. It also allows you to select the lowest point as the close or the low. This way you can use the bodies of the candlestick or the wicks. You can also set the lookback period, so that your high and low can be set as far back as you prefer in the timescale you are looking at.
You can use these lines in things like quarters theory, or analyze buy and sell points in a grid bot strategy. This indicator could help you to determine where to equally place your buy and sells in a grid with up to 24 different placements.
This version has dark lines and is suitable for the light template. There is a matching light line version for a dark template.
(IK) Grid ScriptThis is my take on a grid trading strategy. From Investopedia:
"Grid trading is most commonly associated with the foreign exchange market. Overall the technique seeks to capitalize on normal price volatility in an asset by placing buy and sell orders at certain regular intervals above and below a predefined base price."
This strategy is best used on sideways markets, without a definitive up or down major trend. Because it doesn't rely on huge vertical movement, this strategy is great for small timeframes. It only goes long. I've set initial_capital to 100 USD. default_qty_value should be your initial capital divided by your amount of grid lines. I'm also assuming a 0.1% commission per trade.
Here's the basic algorithm:
- Create a grid based on an upper-bound (strong resistance) and a lower-bound (strong support)
- Grid lines are spaced evenly between these two bounds. (I recommend anywhere between 5-10 grid lines, but this script lets you use up to 15. More gridlines = more/smaller trades)
- Identify nearest gridline above and below current price (ignoring the very closest grid line)
- If price crosses under a near gridline, buy and recalculate near gridlines
- If price crosses over a near gridline, sell and recalculate near gridlines
- Trades are entered and exited based on a FIFO system. So if price falls 3 grid lines (buy-1, buy-2, buy-3), and subsequently crosses above one grid line, only the first trade will exit (sell-1). If it falls again, it will enter a new trade (buy-4), and if it crosses above again it will sell the original second trade (sell-2). The amount of trades you can be in at once are based on the amount of grid lines you have.
This strategy has no built-in stop loss! This is not a 'set-it-and-forget-it" script. Make sure that price remains within the bounds of your grid. If prices exits above the grid, you're in the money, but you won't be making any more trades. If price exits below the grid, you're 100% staked in whatever you happen to be trading.
This script is more complicated than my last one, but should be more user friendly. Make sure to correctly set your lower-bound and upper-bound based on strong support and resistance (the default values for these are probably going to be meaningless). If you change your "Grid Quantity" (amount of grid lines) make sure to also change your 'Order Size' property under settings for proper test results (or default_qty_value in the strategy() declaration).
Ganntime Grid Bot long strategy This is a simulating 3commas grid and DCA robot strategy implementation. In AI mode, the default grid width of btc is 500, and the default grid width of eth is 25. Anyone can use it for free. You can also cancel the AI mode option and manually set the grid size and grid width. The initial order, safety order size, stop loss and take profit parameters are consistent with the configuration and usage of 3commas dca bot.
Grid SystemThis script plots a a square composed of 8 equilateral triangles ("grid"). User can set the frequency of calculation/interval by adjusting the 't' parameter.
Steps for calculating grid:
1. Find the highest high and lowest low for last 't' periods.
2. Calculate midpoint for prices during that interval (highest high + lowest low) / 2.
3. Center of the grid = {time , price midpoint}.
Interpretation:
Volatility : If price is volatile for a given period, the area of the grid will expand, since the top and bottom sides are based on the highest high and lowest low for the period. So as range for a given period increases, the grid's area increases.
Support and resistance : The grid's center line often acts as the support / resistance line.
Trend Following : The example chart shows Cognex (CGNX) price using an interval of t=365. When the stock's trend was bullish, the area of the grids became increasingly larger and the y-coordinate of each grid was greater than that of the previous grid.
Grid Bot RSIGrid Bot Simulator. Based on RSI levels.
How it works:
Prices are divided into grids, or trade zones, that are based on RSI levels. Buys will trigger when the RSI crosses into a higher zone, after descending. Sells will trigger when the RSI crosses into a lower zone, after ascending. After triggering, a new signal will not be produced until the RSI progresses into better zone.
Standard Settings :
RSI Length
Number of Grids
RSI Type : Standard RSI or Jurik RSX (based on Everget’s formula)
Show All Grids
Experimental Features (Adjust in settings menu) :
No Trade Zone : RSI Levels where no trades will be signaled. Adjust to prevent over-buying/selling in narrow markets. Default: 35-65:
No Trade Zone (40-60)
Aggression Level : Increase aggressiveness to stack buys/sells at extreme RSI levels:
Aggression = high
Aggression = low
Market Direction : If market is trending up, the bot will skip every other sell ( = more buys than sells). If down, will skip every other buy (more sells than buys). Default: neutral.
Market Direction: down
Market Direction: neutral
Grid Bot SimulatorThis script is a grid bot simulator for ranging/choppy markets. Prices are divided into grids, or trade zones, that will trigger signals each time a new zone is entered. During ranging markets, each transaction is followed by a “take profit.” As the market starts to trend, transactions are stacked (compare to DCA), until the market consolidates. No signals are triggered above the Upper Limit or Below the Lower Limit.
Settings overview:
Upper Limit/Lower Limit : Highest and Lowest values for entire grid.
Number of Grids : Number of trade zones.
Show Grids : Show or hide all gridlines.
Show Only Current Grids : Only display the grids just above and just below the current trade zone.
High/Low for signals : If enabled, signals are triggered as soon as the price touches the next zone. If disabled, signals are triggered after bar closes. Enable this for “Once Per Bar alerts. Disable for “Once Per Bar Close” alerts.
Highlight Trade Zones
The grid bot should work well during ranging/choppy markets. Each zone will have only one trade, and then will immediately take profit in the next zone.
Ranging/Choppy Market
However, trending markets can produce multiple signals in rapid succession:
Trending Market
If the gridlines are compressing the chart space, enable the “Show Only Current Grids” in settings.
Show Only Current Grids disabled
Show Only Current Grids enabled
When changing symbols, adjust the Upper and Lower Limits to accommodate the new symbol. Otherwise, the chart will look compressed.
XBTUSD chart with ETHUSDT settings
The bot is a proof-of-concept and is considered experimental . Possible future updates will include Fibonacci grids and “smart entry/exits,” depending on the current trend. Comments and suggestions are encouraged.
VPR Grid█ OVERVIEW
Official release of VPR Grid, a mean reverting, trend discovering tool meant to protect capital and find high probability entries.
What this indicator is meant to be used for:
Mean reverting trades
Entries or exits for either swing trades or scalps
Traditional and cryptocurrency markets
Low and high timeframe setups
Sentiment checks
Options to configure:
Optionally use volume in analysis
Use intraday, daily, weekly, or month calculation + choose how many periods of each
Moving average length. This is best kept on the lower end for cryptocurrencies, with respect for volatility
Grid spacing: a purely comestic option that should help with viewing the indicator.
The most important thing to use VPR effectively is to use its settings. The flexibility of VPR Grid is given through its settings. The development that went towards mean reversion and trend discovering means it is a hybrid of fading and trend following tools.
This is a paid premium indicator; please DM me for access. See the images below for examples/explanations on the indicator. Take note of the indicator arguments and which settings were used for a certain timeframe or asset class.
NimhFX Grid LevelsA simple levels indicator for plotting pre-defined price grid.
The default setting is as follows:
Group 1 shows 1000 Point (100 Pip divisions)
Group 2 shows 250 Point (25 Pip divisions)
Groups are duplications of each other to allow multiple divisions to be visible at once, e.g. 100 Pip grid and a 25 pip grid with differing visuals as the default setting.
Number of Lines above/below will alter the amount of lines drawn, change as required, note: Tradingview seems to try to capture all drawings when double-clicking the right price index which can cause this to compress the data.
depending on preferred timeframe you may want to alter this for example to a 10 pip grid (100 point)
Trading with GridThis indicator helps you to negotiate through the grid. You must depend on a flag to start trading. In the indicator we use a weekly moving average with 20 periods.
Use volatility for larger timeframes.
Note that the gray spaces are minimum and maximum, weekly and monthly. If the price goes out of that range, it usually has greater volatility.
The grid has 28 lines.
Purchase order preference.
Once you lose the moving average:
- buy level below
- sale level up.
Real Grid Trend Multiplier & SMA Final Real Grid Trend Multiplier & SMA
"M4x Rainbow" is a Grid Trend Multiplier bot, who is following an adjustable SMA.
Settings:
- Profit % per Step (0-1000%)
- SMA lenght (0-4000)
Alerts: (one Alert is one step)
- longRain
- shortRAIN
The coloring of the lines is:
green = linestate is LONG
blue = linestate is WAIT
yellow = linestate is SHORT
!!! Tested only on 1 Minute Chart !!!
Give it a try and let me know.
...have fun ;-)
[RS]Supertrend GridDynamic grid system based on supertrend.
note: the input nlines/nfractions are not locked so if values too high might start overlapping line objects.
M4x Rainbow V4i strat LINK-USDTGRID & TREND Multiplier Experiment
// "M4x Rainbow" is a Strategy Grid Trend Multiplier bot, who is following the trend.
// I built it as an experimental tool with Strategy implemented, even if that numbers are far out...!
// Because.....it not only depends on the bot setup, the timings of the TradingBot (eg.3Commas) are very relevant too!
// Like amount of Trades, Security Orders, Deviation and so on...
// Please feedback your experience with a Comment , as I would like to improve this bot.
// Updates will follow ;-)
//
// "M4x Rainbow" is not bound on FIFO, each trade get's his own exit.
// It is set for Pyramiding, which can be changed in the "Strategy" line
// Fees are set equal to Binance numbers at 0.1%, about...
// The coloring of the lines is:
//
// green = linestate is LONG
// blue = linestate is WAIT
// yellow = linestate is SHORT
//
// Give it a try and let me know.
//
// ...have fun ;-)
Grid System With Fake MartingaleThe proposed strategy is based on a grid system with a money management that tries to replicate the effect of a martingale without having to double your position size after each loss, hence the name "fake martingale". Note that a balance using this strategy is still subject to exponential decay, the risk is not minimized, as such, it would be dangerous to use this strategy.
For more information on the martingale and grid systems see:
Strategy Settings
Point determines the "grid" size and should be adjusted accordingly to the scale of the security you are applying the strategy to. Higher value would require larger price movements in order to trigger a trade, generating fewer trades as a result.
The order size determines the number of contracts/shares to purchase.
The martingale multiplier determines the factor by which the position size is multiplied after a loss, using values higher to 2 will "squarify" your balance, while a value of 1 would use a constant position sizing.
Finally, the anti-martingale parameter determines whether the strategy uses a reverse martingale or not, if set to true then the position size is multiplied after each win.
How It Works
Let's illustrate how we replicate a martingale without doubling our exposure with a simple casino example. Imagine you are playing roulette, and that you are betting on colors (black/red), your payout is 1 to 1, in the case you win, you will have your initial stake back plus a profit equal to your initial stake.
If your strategy is to recover any previous losses, you can double your stake each time you lose, once you win you will get back the previous losses plus a profit equal to your original stake, this is the martingale system. So how can we win back previous losses without having to double our stake? We could do that by doubling the payout ratio after a loss, so after a loss, we must use a payout ratio of 2:1, if we lose once again we must use a payout of 4:1...etc, our payout ratio would be subject to exponential growth instead of our stake.
Of course, the payout ratio is fixed with casino games, but in trading, we can manipulate the position of our take profit in order to replicate such effect, this is what this strategy is doing. So after a loss, we place our take profit such that a win recover our losses back plus generate a profit.
Advantages
The advantage of this approach is that unlike the martingale we don't double our position size, which instead can remain constant, this is a huge advantage as a martingale will require a significant capital in order to tank a series of losses.
Disadvantages
The main disadvantage of this method is that the price might never reach our take profit after a long losing streak, our balance would remain in the red and we couldn't do anything about it except reset the strategy.
Frictional costs are still a disadvantage, as such, we would need to place our take profits in order to account for them, while this is still better than purchasing additional shares, it minimizes the chances of the price reaching the take profit.
Conclusions
An alternative money management system replicating the effect of a martingale as been presented, we can see that such a system is far from being perfect, and it would be foolish to use it, however, it stills offer a convenient alternative to less aggressive progressive position sizing systems.
I have been receiving some messages from users criticizing me for exposing the martingale money management system, and I understand why but I can't agree, talking about it allow me to warn users against it, the grid-martingale methodology is will create more harm than anything else, the reward is only one side of the story and should always be compared against the risk, so always take a look at all the statics in a backtest.
Thanks for reading!
Shout-Out
This post was made possible thanks to my patrons:
@Happymono, @AmariMars, @kkhaial, @Nugehe, @LucF, @Nosmok, @iflostio, @DankBeans, @ecletv, @Neverstorm, @alex.crown.jr, @uk503, @xkingshotss, @vsov, @jbelka, @yatrader2, @hughza, @ganh
Grid Like StrategyIt is possible to use progressive position sizing in order to recover from past losses, a well-known position sizing system being the "martingale", which consists of doubling your position size after a loss, this allows you to recover any previous losses in a losing streak + winning an extra. This system has seen a lot of attention from the trading community (mostly from beginners), and many strategies have been designed around the martingale, one of them being "grid trading strategies".
While such strategies often shows promising results on paper, they are often subjects to many frictions during live trading that makes them totally unusable and dangerous to the trader. The motivations behind posting such a strategy isn't to glorify such systems, but rather to present the problems behind them, many users come to me with their ideas and glorious ways to make money, sometimes they present strategies using the martingale, and it is important to present the flaws of this methodology rather than blindly saying "you shouldn't use it".
Strategy Settings
Point determines the "grid" size and should be adjusted accordingly to the scale of the symbol you are applying the strategy to. Higher value would require larger price movements in order to trigger a trade, as such higher values will generate fewer trades.
The order size determines the number of contracts/shares to purchase.
The martingale multiplier determines the factor by which the position size is multiplied after a loss, using values higher to 2 will "squarify" your balance, while a value of 1 would use a constant position sizing.
Finally, the anti-martingale parameter determines whether the strategy uses a reverse martingale or not, if set to true then the position size is multiplied after any wins.
The Grid
Grid strategies are commons and do not present huge problems until we use certain position sizing methods such as the martingale. A martingale is extremely sensitive to any kind of friction (frictional costs, slippage...etc), the grid strategy aims to provide a stable and simple environment where a martingale might possibly behave well.
The goal of a simple grid strategy is to go long once the price crossover a certain level, a take profit is set at the level above the current one and stop loss is placed at the level below the current one, in a winning scenario the price reach the take profit, the position is closed and a new one is opened with the same setup. In a losing scenario, the price reaches the stop loss level, the position is closed and a short one is opened, the take profit is set at the level below the current one, and a stop loss is set at the level above the current one. Note that all levels are equally spaced.
It follows from this strategy that wins and losses should be constant over time, as such our balance would evolve in a linear fashion. This is a great setup for a martingale, as we are theoretically assured to recover all the looses in a losing streak.
Martingale - Exponential Decays - Risk/Reward
By using a martingale we double our position size (exposure) each time we lose a trade, if we look at our balance when using a martingale we see significant drawdowns, with our balance peaking down significantly. The martingale sequence is subject to exponential growth, as such using a martingale makes our balance exposed to exponential decays, that's really bad, we could basically lose all the initially invested capital in a short amount of time, it follows from this that the theoretical success of a martingale is determined by what is the maximum losing streak you can endure
Now consider how a martingale affects our risk-reward ratio, assuming unity position sizing our martingale sequence can be described by 2^(x-1) , using this formula we would get the amount of shares/contracts we need to purchase at the x trade of a losing streak, we would need to purchase 256 contracts in order to recover from a losing streak of size 9, this is enormous when you take into account that your wins are way smaller, the risk-reward ratio is totally unfair.
Of course, some users might think that a losing streak of size 9 is pretty unlikely, if the probability of winning and losing are both equal to 0.5, then the probability of 9 consecutive losses is equal to 0.5^9 , there are approximately 0.2% of chance of having such large losing streak, note however that under a ranging market such case scenario could happen, but we will see later that the length of a losing streak is not the only problem.
Other Problems
Having a capital large enough to tank 9any number of consecutive losses is not the only thing one should focus on, as we have to take into account market prices and trading dynamics, that's where the ugly part start.
Our first problem is frictional costs, one example being the spread, but this is a common problem for any strategy, however here a martingale is extra sensitive to it, if the strategy does not account for it then we will still double our positions costs but we might not recover all the losses of a losing streak, instead we would be recovering only a proportion of it, under such scenario you would be certain to lose over time.
Another problem are gaps, market price might open under a stop-loss without triggering it, and this is a big no-no.
Equity of the strategy on AMD, in a desired scenario the equity at the second arrow should have been at a higher position than the equity at the first arrow.
In order for the strategy to be more effective, we would need to trade a market that does not close, such as the cryptocurrency market. Finally, we might be affected by slippage, altho only extreme values might drastically affect our balance.
The Anti Martingale
The strategy lets you use an anti-martingale, which double the position size after a win instead of a loss, the goal here is not to recover from a losing strike but instead to profit from a potential winning streak.
Here we are exposing your balance to exponential gross but you might also lose a trade at the end a winning streak, you will generally want to reinitialize your position size after a few wins instead of waiting for the end of a streak.
Alternative
You can use other-kind of progressions for position sizing, such as a linear one, increasing your position size by a constant number each time you lose. More gentle progressions will recover a proportion of your losses in a losing streak.
You can also simulate the effect of a martingale without doubling your position size by doubling your target profit, if for example you have a 10$ profit-target/stop-loss and lose a trade, you can use a 20$ profit target to recover from the lost trade + gain a profit of 10$. While this approach does not introduce exponential decay in your balance, you are betting on the market reaching your take profits, considering the fact that you are doubling their size you are expecting market volatility to increase drastically over time, as such this approach would not be extremely effective for high losing streak.
Conclusion
You will see a lot of auto-trading strategies that are based on a grid approach, they might even use a martingale. While the backtests will look appealing, you should think twice before using such kind of strategy, remember that frictional costs will be a huge challenge for the strategy, and that it assumes that the trader has an important initial capital. We have also seen that the risk/reward ratio is theoretically the worst you can have on a strategy, having a low reward and a high risk. This does not mean that progressive position sizing is bad, but it should not be pushed to the extreme.
It is nice to note that the martingale is originally a betting system designed for casino games, which unlike trading are not subject to frictional costs, but even casino players don't use it, so why would you?
Thx for reading
[HM] HORIZONTAL GRID ROUNDED (VOLATILITY BASED)The purpose of this indicator is to draw a horizontal grid having in mind:
- rounded price levels instead tradingview standard grid, zoom-based;
- calculated by volatility, using daily ATR;
- independent of timeframe in use, locked to DAILY calculations.
Further improvements are intended.
Wish this could be useful. Any questions, feel free to comment.
CoGrid ManagementThis strategy uses grid levels determined by pivot points based on the selected time period.
It's useful for swing trading without leverage, spot trading or for Hold management.
If the price goes down we buy and if it continues to go down we keep buying improving the average price.
When the price rises above the average entry price, we sell and if it continues to rise, we continue to sell.
It works for any pair as long as Buys and Sells quantities are adjusted correctly.
In these times of great economic change, good luck to everyone 🍀
BoilerRoomColdCaller - 3Commas Grid Bot SignalThis is very similar to 3Commas' grid bot, the range is from the previous 7 days' lowest low decreased by 3% to the previous 7 days' highest high increased by 3%, you can also adjust if you want 7 days' highest/lowest close price as your range or highest high and lowest low as your range. 10 buys and 10 sells within the range, the unit price would be (high-low)/19.
The buy signals and the sell signals will be triggered if:
- The previous close is below one specific green line (buy line), and the current close is above that specific green line, or
- The previous close is above one specific green line (buy line), and the current close is below that specific green line
Thus, whether the price is dropping below these lines or rising above these lines, a buy or sell signal will be triggered when they cross green or red lines. Your entry price will be the next open price after this candle's close reaches the lines.
Big thanks to @glaz, who helped me a lot with this script. Please give a like button and share if you like this script. Let me know if you have questions, thanks guys.
Cyato Grid Basic Buy & Sell [BACKTEST]Private indicator
This Grid bot strategy creates buy orders when the price goes down one level or more, and sell order when the price goes up one level or more.
To avoid useless trades, the lastest traded level is disabled until another level is crossed.
To create the grid, one upper level and one lower level is calculated. Those 2 levels are either given by the user using "MANUAL" mode or automatically calculated by an AI. The space between these two levels are then divided equally into several steps, creating the grid. The number of steps is chosen by the user, from 3 to 20.
HOW IT WORKS
This is the Backtest version meaning this is the one you should use with the Strategy Tester (more below).
Select either "MANUAL" or "AI" mode.
When using "MANUAL", you have to configure an upper level and a lower level.
When using "AI", the upper and lower level are automatically calculated from last 7 days high/low plus a 3% deviation. You can configure the timeframe and the deviation.
Select the grid quantity, from 3 to 20.
Example with 3:
Example with 10:
Example with 20:
You can choose between "Once Per Bar Close" or "Once Per Bar" alert type.
"Once Per Bar Close" will wait candle close to confirm a trade.
"Once Per Bar" will trigger a trade if the price crossed a step anytime inside a candle. Note that the backtest will still use bar close price in its calculation.
BACKTESTING
The strategy will buy 1 contract when a BUY signal appears and sell 1 contract when a SELL signal appears.
Here 1 contract = 1 BTC
The strategy can buy up to 20 contracts. Pyramiding is enabled.
The Backtest info panel is here to show how many trades are open in the backtest.
I know very well that a backtest has no value if several trades are left open. That is why I coded a feature to close all open trades at once on the last candle. This feature can be turned on and off.
To get this indicator, use the link in my signature below, thanks!
Cyato Grid Basic Buy & Sell [ALERTSETUP]Private indicator
This Grid bot strategy creates buy orders when the price goes down one level or more, and sell order when the price goes up one level or more.
To avoid useless trades, the lastest traded level is disabled until another level is crossed.
To create the grid, one upper level and one lower level is calculated. Those 2 levels are either given by the user using "MANUAL" mode or automatically calculated by an AI. The space between these two levels are then divided equally into several steps, creating the grid. The number of steps is choosen by the user, from 3 to 20.
How it Works
This is the Alert Setup version meaning this is the one you should use to create alerts (more below).
Select either "MANUAL" or "AI" mode.
When using "MANUAL", you have to configure an upper level and a lower level.
When using "AI", the upper and lower level are automatically calculated from last swing high/low.
Select the grid quantity, from 3 to 20.
Example with 3:
Example with 10:
Example with 20:
Creating the Alerts
When opening the alert popup, select "Cyato Grid" in the condition.
Make sure to use the option "Once per bar close" in order to stay in sync with the graphics on chart. (Only use "Once per bar" if you really know what you are doing).
Available alerts:
- BUY : Buy alert. Green label on chart.
- SELL: Sell alert. Red label on chart.
To get this indicator, use the link in my signature below, thanks!
Example - How to create multiple level gridsExample on how to create custom grids with variable N lines/labels: