Cyatophilum Ultimate Trading Bot [BACKTEST]

cyatophilum Updated   
Private Indicator.

This is an indicator for trading low timeframes. It is generic and configurable meaning you can use it not only on crypto, but also forex, CFD, stocks etc.


The user chooses between three powerful base strategies: Bollinger Bands + Stoch RSI, RSI Divergences or the SARMA Strategy.
He can also trade support and resistance breakouts, with or without the base strategy.

Use the Alert Setup version to trigger entry and exit alerts.

You can choose between a set of trend lines that will filter trades that are against the main trend in order to increase profitability.

The integrated Trailing Stop Loss will trigger an alert to exit the trade.

You can use the Trailing Take Profit with a configurable % deviation. It will also trigger an exit alert.






USD/WTI 1m IDC (Us Dollar/ WTI Crude OIL)

Backtest below for BITMEX:LTCZ19 in 15m timeframe.

To get access to the indicator, use the link below, thanks for reading!
Release Notes:
Added a new backtesting feature which allows you to backtest on regular chart as if you were using the strategy on the Heikin Ashi chart.
Because we know the Strategy Tester doesn't work on the HA chart.
This way you can see the results if you were using the strategy on Heikin Ashi candles.
Release Notes:
Bug fixes
Release Notes:
New Feature: Higher Timeframe Double Trend Line
/!\ You must use a resolution higher from the current one /!\

Release Notes:
Bug Fixes
Release Notes:
New entries:
  • SuperTrend
  • Basic PSAR
  • Volume (Chaikin Money Flow)
  • Levels (Fibonacci: Long on fib 78 and 61. Short on fib 23 and 38)
  • Channels (Donchian)

New options:
Allow reverse orders
Bollinguer Bands Multiplier

Doubled default commission % per order (0.1%)
Release Notes:
Bug fixes
Release Notes:
Bug fixes
Release Notes:
New entry option: Stochastique
Release Notes:
Bug fixes and performance update
Configuration panel updated
Entry base indicators naming :
  • Scalp = for low time frame strategies
  • Swing = for high time frame strategies
Release Notes:
New Feature! Filter trades when the market is going sideways! (useful in low time frames strategies)
ADX Sideways Filter from Higher Timeframe
Use this tool to understand how it works!
Release Notes:
Brought back the "LEVELS" entry.
Fixed a bug where the entry reversed when it shouldn't.
Release Notes:
Bug fixes: Removed the repainting that was introduced with the double trend line.
Release Notes:
New entry: MFI (Money Flow Index)
Long MFI entry triggers when MFI is oversold and reversing upwards.
Short MFI entry triggers when MFi is overbought and reversing downwards.
Release Notes:
Updated Panel Info
Release Notes:
New backtest feature

Stop Loss and Take Profit Alert Type

You can switch between "once per bar close" and "once per bar" to get a glimpse of what would be better for you.

Note: The strategy tester still waits for bar close, but using "once ber par" will not take wicks into account.
Release Notes:
Update on info panel. Should be easier to read.
Release Notes:
hotfix (TTP)
Release Notes:
New optional feature:
Volume Cap (minimum) to filter trades when the volume is below a specified value.
Release Notes:
Changed default settings
Release Notes:
New optional backtest feature: Dollar Cost Average
Release Notes:
Visual fix
Release Notes:
Updated info panel
Release Notes:
New options for the DCA (safety orders) feature:
  • Increased max DCA orders count to 2
  • DCA order step new option
Release Notes:
bug fix: 2nd safety order was triggering when it shouldn't
Release Notes:
Bug fix
(DCA orders with "allow reverse order option enabled" where triggering more times than expected)

Default parameters set for XBTUSD.P 5m
Release Notes:
small fix
Default settings were a bit different than the alert setup
Release Notes:
New entry added : CYATO AI
Based on a combo of volume, momentum and candle pattern.
Default settings updated, set for XBTUSD 5m
Release Notes:
hotfix: typo in the code made cyato ai go only long
Release Notes:
New feature: Exit Timer
Stuck in a trade for too long? Use this feature to trigger an exit after xx number of bars!
Release Notes:
MAY UPDATE #1: DCA Feature

The existing DCA feature has been improved.

DCA stands for Dollar Cost Average. The idea is to open additional orders from the base order in order to improve risk management.
These additional orders are also called Safety Orders. The Ultimate Trading Bot Indicator can now handle up to 9 safety orders.

The strategy will now exit either from a take profit based on percentage from base order or a percentage from total volume. Configurable in the parameters.

Note: the base order and safety orders have equal order size (volume).

Other minor changes:

The default settings have been changed to fit a margin trading strategy on the BTC/USDT Binances Futures chart in 15 minutes timeframe. Backtest updated below.
The default order size is now 10% of equity.
The colors are now a bit less saturated.
Release Notes:
  • Bug fix: Number of safety orders was one off.
  • Updated indicator settings visual.
Release Notes:
New Trend Filters:
  • ALMA : Arnaud Legoux moving average. Offset is set to 0.85 and sigma to 6. The length is configurable.
  • RMA : Moving average used in the RSI. The length is configurable.
  • SWMA : Symmetrically weighted moving average with fixed length : 4.
  • VWMA : Volume weighted moving average. The length is configurable.

New option to add a red background color that highlights areas where trades are filtered by the ADX filter.

Simplified Heikin Ashi option: Now both backtest and alerts MUST be used on REGULAR candles. The option allows to use Heikin Ashi candles as source for the indicators (The take profit, stop loss and dca still use real prices).
Release Notes:
Hotfix: DCA long stop loss now properly triggers when price crosses the line.
Release Notes:
DCA feature: new option to use Trailing Stop Loss or Last DCA step as Stop Loss.
Release Notes:
DCA bug fixes
Release Notes:
Updated Info Panel - More compact and easier to read - Now shows up by default.
Release Notes:
Added an option to change the info panel size.
Release Notes:
NEW ENTRY: Top & Bottoms

Simply check the box in the input settings to add the Top & Bottom entries, or Double Top and Bottom entries.

Configure the ignore number in the advanced parameters section of the input settings.

The entries are calculated by my Top and Bottom indicator (you can find it in my profile scripts)

The entries will be filtered by trend filters, sideways filter , volume cap etc.
Release Notes:
info panel small update
Release Notes:
info panel small fix
Release Notes:
New options for the Support/Resistance breakouts:
-Ignore Trend filters (true by default)
-Ignore ADX filter (true by default)

Available in the Advanced parameters section.
Release Notes:
Release Notes:
New entry: QQE (SWING) (Quantitative Qualitative Estimation)

Works well with "Allow reverse orders" option as it is a reversal indicator.

Configure the ATR multiplier and lookback in the Advanced Parameters section of the indicator' settings
Release Notes:
New Backtest feature when using Safety orders !

The following parameters are now available in the indicator advanced parameters:
  • Base order size
  • Safety order size
  • Safety order volume scale

Note: when using safety orders, the order size will always be in contracts. When not used, the order size in set in the backtest parameters tab as usual.
Release Notes:
Safety order step scale now works like this:
The scale will multiply step in percents between safety orders.
Let's assume there is a bot with safety order price deviation 1% and the scale is 2. Safety order prices would be:

It's the first order, we use deviation to place it: 0 + -1% = -1%.
Last safety order step multiplied by the scale and then added to the last order percentage. The last step was 1%, the new step will be 1% * 2 = 2%. The order will be placed: -1% + -2% = -3%.
Step: 2% * 2 = 4%. Order: -3%+ -4% =-7%.
Step: 4% * 2 = 8%. Order: -7%+ -8% =-15%.
Step: 8% * 2 = 16%. Order: -15%+ -16% =-31%.
Release Notes:
Now works: ability to disable stop loss when using DCA.
=> Select Stop Loss Type : "Stop loss above" and turn off the Stop Loss feature.
Release Notes:
The parameter "Safety Order Volume Scale" is now affecting the Take Profit line while using the "Percentage of Total Volume" Take Profit type.

Release Notes:
New feature: Session Filter
Pick a session range and any trade outside will not trigger!
Optional, turned off by default.

Note: It seems that on some markets when turning the feature on, the weekends are filtered out.
Note 2: You can use the "show red background when trades are filtered" to see when the session is active.
Release Notes:
Info panel:
Now prints the max period the strategy tester can calculate based on the current timeframe. It is 20000 bars * current timeframe as to the current data loaded on the chart.
Release Notes:
New ADX filter option to filter trades BELOW or ABOVE threshold
Release Notes:
Release Notes:
bug fixes (DCA SL)
Release Notes:
New entry: BB (Bollinger Bands), as there was a BB + RSI entry this one only uses Bollinger Bands when price gets back into them.
Release Notes:
New trendlines: Adaptive Tilson T3 and MTF Adaptive Tilson T3.
Note that with adaptive trendlines the length (lookback) is automatically calculated.
Release Notes:
Reverse Order On Stop Loss feature:
- Reverse entry alert and stop loss now trigger on the same bar.
- For security, this feature will not happen more than once.
Release Notes:
Rollback 1 update before.
Release Notes:
Fixed an issue with the security function that didn't return any value in some historical data.
Release Notes:
Added an alert_message parameter to strategy functions in order to be able to use strategy alerts.

Long entry and DCA Long will trigger a "LONG" message

Long entry and DCA Short will trigger a "SHORT" message

Stop loss, Take Profit, exit signal will trigger an "EXIT" message.
Release Notes:
CORE: No changes. You should be able to recreate your strategies with this new version.
Some input settings changed place for better understandability.

Higher/Lower Highs & Lows section
2 parameters: 1 safe and 1 risky.

MA Cross section
Ability to create signals from MA cross or price & MA cross.
When using Price & MA cross, the indicator waits from high/low to fully cross the trendline to avoid noise.

- Added EXTERNAL trendline source.
To make it work:
1. Add the External Trendline (any indicator)
2. Select the related plot in the UTB trendline external source

- Added Adaptive HULL MA.
- Added parameter "Trend Condition" to choose how the trend is calculated, between " trendline slope" and price position (above or below)
- Added an option to exit a trade when the trend reverses.

- Added MTF Adaptive HULL MA
- Added parameter "Trend Condition"

Now has a whole section, you can choose between AUTO or MANUAL threshold.
- Added a bullish/bearish candle condition

2 threshold parameters to filter both long and short entries depending on the RSI value.

Now works on everyday of the week

GRAPHICS : The background color to show filtered areas has now 2 colors to see when long and shorts are filtered.
Info Panel: Now shows the script version.
Default settings has everything turned off, this is to show new users how to create a strategy step by step.
See the info panel in the chart above if you want a sample configuration.
Release Notes:
- Updated info panel.
- The indicator will now understand that the strategy is supposed to reverse when no SL and TP is set.
Release Notes:
Info panel: now prints BB entry multiplier

Volume Filter AUTO mode improved

Added KAMA Trendline
Release Notes:
S/R breakouts now works properly with Volume, RSI and Session filters. (In addition to ADX filter)
Release Notes:
Create alerts from the backtest version!

-> Added Strategy Alerts text inputs.
How to use:
Write your alert messages for EXIT, LONG and SHORT orders in the settings (Backtest section).
Then click add alert, and in the placeholder, write the following:
Release Notes:
Bugfixes: S/R breakouts entries were ignoring the volume filter.
Release Notes:
New entry "ASAP": creates an entry everytime a trade is closed. Meant to be used with the Trendline filter.
Release Notes:
Regarding the safety orders, in rare cases a step wasn't triggered when it should.
The reverse order on stoploss option now works with safety orders enabled.
Release Notes:
As requested, I added the entry "Cyato AI (SWING)".
Release Notes:
Minor update: Backtest period settings improved.
Release Notes:
New entry: "Adaptive Channels (SWING)", a swing trade indicator for long-only strategies.
Release Notes:
Small fix: in some cases the backtest long/short results option wasn't working properly.
Release Notes:
bugfix introduced in the last update.
Release Notes:
New entry: "Cyato AI v2 (Scalp)"
What changed with Cyato AI version 1:
- added noiseless RSI (RSX) overbought/oversold check
- additional candle patterns
- will buy less "at the top" or "after the move"

The version 1 is still available, of course, still called "Cyato AI (Scalp)"

Cyato AI V2 seem to work well with VWMA 200 trendline and ADX filter.
Release Notes:
Hotfix with Cyato AI V2 introduced lately. Short signals were not triggering.
Release Notes:
Configuration panel udpated: smaller and better placement.

Added new alert system!
To use it:
1. Write your alert messages in the indicator settings (alert section at the bottom)
2. Click "Create Alert" as usual, but choose "alert() function calls only"

That's all! You will receive alerts for every event.
Release Notes:
New setting for the MTF trendline: you can apply it on another pair.
For example if you are on ETHUSDT, and want the trendline to be on BTCUSDT, now you can.
Release Notes:
- Max safety trades count limitation changed from 9 to 100.
Note: it seems the strategy tester can only handle 82 open trades though.
- Added "alert type" setting for safety trades alerts to choose from "Once per bar" or "Once per bar close".
- Removed Stop loss type setting. We will just use the regular stop loss now which makes more sense.
- Average volume take profit calculation improved.

Trailing TP (Fix):
- Behavior update when using "Once per bar" alert type. The trailing TP will now exit when it should.
Release Notes:
New DCA alert type : "All"
With this setting, the long/short dca alert is able to trigger several times during a candle whereas the other settings would trigger only once per bar even if the price breaks through several dca steps.
Note: the backtest still calculates results using only one trade per bar because of its limitations.
Release Notes:
DCA small fixes: a dca signal cannot trigger on take profit or stop loss event
Release Notes:
Added a price entry input that will create entry at the given price.
Release Notes:
Price entry now takes wicks.
Release Notes:
New entry: VWAP (Volume Weighted Average Price)
Configure the anchor, offset, standart deviation mutlipier for the bands, and choose to entry from VWAP price cross (trend mode) or bands price hits (rotation mode).
Combine the VWAP with the other features to improve the strategy.

Release Notes:
- Backtest Period Inputs addition
- Info panel updated: now shows the real backtest period and the number of open trades in real time.
- Trailing TP graphic enhancements
Release Notes:
Quality of life update for the inputs:
- Added tooltips
- Added a checkbox for each alert even to prevent the alert to trigger
Release Notes:
Gave PSAR some love so that we can use it alongside filters like RSI filter to scalp low timeframes.
The PSAR value can now be a decimal value to get less noise on low timeframes.

Added new entry "BB + UO"
Combination of Bollinger Bands and Ultimate Oscillator.
The entry is triggered when price hits a band and UO is oversold/overbought and reversing.
Release Notes:
Regarding Once Per Bar Alerts:
To be able to receive once per bar alerts with the strategy, you need to set the backtest parameter "Recalculate: On Every Tick" to true.
Otherwise the strategy will calculate the alerts on bar close only.
Using this paramter was causing a bug that stopped the alerts. This bug is fixed in this update.
Release Notes:
"Recalculate : On every tick" set to true by default.
PSAR settings: added Start, Increment and Maximum.
Release Notes:
Added Heikin Ashi (swing) entry
Release Notes:
HA Swing entries behavior update when used with TP/SL
Release Notes:
Added Buy & Hold Comparator panel.
The buy & Hold Comparator is an additional panel that turns green when the strategy's return is greater than the Buy & Hold return.
The Strategy Return is the strategy netprofit + the strategy openprofit.
Use longs results only and a 100% equity order size to compare to Buy & Hold.
Enable the panel in the Graphics section of the indicator settings.
Release Notes:
Improved Trailing Take Profit behavior. Sometimes it would exit too early.
A bug when a long and short entry could happen on the same bar has been fixed.
Release Notes:
BugFix DCA volume scale: the scaling now starts at 2nd DCA
Release Notes:
It is now possible to retrieve the DCA order size in the alert message.
In your DCA long or short alert message, writing {order_size} will be replaced by the DCA order size.

"Order size is {order_size} contracts"
will be replaced by:
"Order size is 5 contracts"
Given the current safety order size is 5.
Release Notes:
DCA / Safety Orders
Both base and safety order size no longer is in contracts but in either fixed currency amount or % of Equity.
Release Notes:
Added a secondary Take Profit option & alert
- Configure your 2nd target in % (should be bigger than the 1rst)
- Configure the % quantity to exit on the 1rst Take Profit, between 0 and 100. The remaining % will be exit on the 2nd TP.

-> A useful feature to improve your strategies risk management!
Release Notes:
Added new Backtest Results panel!
You can disable it by going in the style tab -> tables, or by clicking the indicator setting "Backtest Results Table".
Release Notes:
Removed some "transp" arguments
Release Notes:
Added placeholder {price} for Long + Short TP and SL alerts.
Release Notes:
Added placeholders {price}, {TP} and {SL} to get the price values inside the Long & Short entry alerts.
Release Notes:
Using \n in alert messages now creates a new line.
Release Notes:
You can now write {position_size} in the alert messages in the indicator settings and it will be replaced by the value.
Release Notes:
Performance udpate - alert messages fix: \n is now replaced by new line
Release Notes:
Important bug fix regarding take profit alert messages. TP message was swapped with TP 2 message.
Release Notes:
Added {TP2} placeholders in the entry alert messages.
Release Notes:
{price} placeholder for entry alerts now take the limit price option into account.
Release Notes:
Release Notes:
Removed 2 digits rounding to the alert placeholders.
Release Notes:
Added 2 alerts Long/short exit with reverse
Release Notes:
Added a smoothing parameter for ADX filter.
Release Notes:
Backtest panel: added max drop in flat value
Release Notes:
Added an option to show the backtest table in replay mode.
Release Notes:
Fixed a bug when using "reverse order on stoploss" option and DCA not calculating.
Release Notes:
Added a "Contracts" option for safety orders' size. Useful for stock and futures.
Safety orders now properly get placed when using "once per bar" option.
Release Notes:
Converted to pine v5
Added information in the backtest panel: required initial capital, amount of SO used, max days in a deal.
Release Notes:
Bug fixes: dca not closing on take profit
Release Notes:
ADX and RSI filter now use the indicator current bar when their resolution is same as Chart.
Release Notes:
The Moving Average Cross Entry feature has been updated and improved with more options.
Release Notes:
Added an optional DMI filter to the ADX fitler section.
Used to filter using directional Movement Index:
- only go long if DI+ is above DI-
- only go short if DI- is below DI+
Release Notes:
Small bug fix: Required Initial capital in backtest panel was printed in contracts instead of quote currency.
Release Notes:
Fix typo in backtest panel
Release Notes:
Updated RSI filter:
- Now can be switched for a STOCH filter.
- Added option to filter ABOVE or BELOW the threshold for BOTH long and short signals.
Release Notes:
Updated config panel and dca price deviation and scale input steps
Release Notes:
changed step for input dca vol scale
Release Notes:
Reduced safety order volume scale minimum from 1 to 0.1
Release Notes:
When converting to pine v5, the style tab got altered. This update brings back the color and background customisation.
Release Notes:
Release Notes:
Fix a bug in the backtest when using "once per bar" DCA combined with reverse orders enabled
Release Notes:
small update to prevent double signals in case of reversal strategy mode when stop loss and entry could trigger on the same bar. Now the entry signal triggers only.
Release Notes:
Alert text inputs are bigger and now allows line returns!
Release Notes:
Added alert placeholders:
{price} will return the close price
{ticker} symbol name without exchange prefix
{tickerid} symbol name with exchange prefix
Release Notes:
Updated Trend Line Filters
- Code refactoring, the script should load a bit faster
- Added 'SMMA', 'VIDYA', 'FRAMA' and 'DEMA' trend lines
Release Notes:
Removed config panel since there is now a built-in tab in the strategy tester where you can see all indicator parameters.
Release Notes:
Script loading time optimisation update
It should load about 2s faster when backtesting
Release Notes:
Release Notes:
New stop loss setings: ATR Trailing stop
Added alert placeholders
Improved backtest engine (once per bar exits are now all placed using limit orders)
Fix a few bugs
Release Notes:
Updated VWAP bands calculation
Release Notes:
Updated inputs for better usability
Updated cyato swing AI
Added VWAP bar filter and source for bands touch
Updated graphics
Release Notes:
Bug fix: the "EXIT" signal was not closing orders in the backtest due to an oversight from me in a previous udpate.
Release Notes:
added a stop loss order on same bar as entry only for 'once per bar' scenarios where entry and stoploss happen on same bar. The order gets canceled on next bar.
Release Notes:
- Code optimisation
- Added "Auto" Take profit and Stop Loss modes, based on average true range
- Added new alert placeholders
Release Notes:
Added a start "Date" parameter for the "price entry" setting in the "advanced parameters" section

🔥Get the Cyatophilum Indicators today and automate them on Binance! =>

Strategy templates at

I am taking PineScript Commissions ✔
Invite-only script

Access to this script is restricted to users authorized by the author and usually requires payment. You can add it to your favorites, but you will only be able to use it after requesting permission and obtaining it from its author. Contact cyatophilum for more information, or follow the author's instructions below.

TradingView does not suggest paying for a script and using it unless you 100% trust its author and understand how the script works. In many cases you can find a good open-source alternative for free in our Community Scripts.


The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Author's instructions

This indicator access can be purchased through a subscription on my website:

Want to use this script on a chart?

Warning: please read before requesting access.