Cryptotenyx

BotDCA | Algorithmic Smart DCA Bot

Cryptotenyx Обновлено   
🌌 What the script does, how it does ?

At the heart of its algorithm, this script incorporates the concept of Dollar Cost Averaging (DCA), a method of periodically allocating funds to an asset to mitigate the effects of market volatility.

Before we start, it's important to clarify that the script is adapted for the cryptocurrency market on USDT & USDC pairs in Spot, and on the Daily timeframe (D).
For this reason, and to optimize profits, the script will generate very few buy and sell positions.
Please also note that the script does not repaint.

Essentially, BotDCA generates buy and sell orders.
These buy and sell orders are generated using the following logic :

BUYING LOGIC :
Volume : Current volume is compared with a linear percentile of volume over a short period.
This means that if current volume is higher than observed volumes over this period, the volume criteria is considered valid.
Momentum & Volatility : The Average True Range (ATR) indicator adjusted by a square root is used as a measure of volatility.
Momentum is then calculated as the difference between the current closing price and a short moving average, normalized by this adjusted volatility.
The oversold condition is validated when momentum exceeds a specific level.

For the buy order to be triggered, the volume, momentum and volatility criteria must be validated.

SELLING LOGIC :
Volume : Similar to the buy logic, the volume criteria is validated when current volume is higher than previous volumes.
Momentum & Volatility : Volatility is measured using the adjusted ATR indicator, similar to the buy logic.
An overbought condition is validated when normalized momentum, calculated as the difference between the current closing price and a volatility-adjusted short-period moving average, exceeds a specific level.
Trend : The general market trend is considered for the sell logic.
The trend criteria is validated when the current moving average is higher than that of the previous period.

For the sell order to be triggered, the volume, momentum, volatility and trend criteria must be validated.


These orders are also adjusted according to what the user defines as buy and sell settings :

🔵 Buying settings
Quantity per order ($) : Defines the amount in stable coins to be invested for each buy order.
└> Mult. quantity (x) : Multiplication factor applied to the buy quantity for successive orders, enabling the investment to be increased in the event of a price fall.

Example : If Quantity per order is $200 and Mult. quantity is x2, then the second buy order will be $400, the third buy order will be $800, the fourth buy order will be $1600 ...
After a sell order, the multiplier is cancelled.

Note : If value is set to 1 : Disabled

└> Max. quantity (x) : Sets a maximum purchase quantity limit, preventing orders from exceeding this amount.

Example : If Quantity per order is $200, Mult. quantity is x2, and Max. quantity is $700, then the second buy order will be $400, the third buy order will be $700, the fourth buy order will be $700 ...
Note : If value is less than Quantity or is set to 0 : Disabled

└> If Price > Average price : Enable or disable quantity multiplier when current price exceeds average price.
Min. delay (in days) : Establishes a minimum interval in days between two successive purchases to avoid investing too close together.

Example : By default the time interval for the bot is set to D, so if you set 20 as the value, the bot will wait at least 20 days between buy orders before entering a position.
Note : If value is set to 0 : Disabled

└> Min. deviation (%) : Defines the minimum price difference in percent to trigger a new purchase after the first.

Note : If value is set to 0 : Disabled

└> Mult. deviation (x) : Apply a multiplication factor to the price differential for successive buys, progressively increasing the purchase interval.

Example : If Mult. deviation is 10% and Min. deviation is x2, then between the first and second buy orders the minimum deviation will be 10%, between the second and third buy orders the minimum deviation will be 20%, between the third and fourth buy orders the minimum deviation will be 40%...
After a sell order, the multiplier is cancelled.

Note : If value is set to 1 : Disabled

Display help for these settings : On chart, displays help text about buying settings.

🟢 Selling settings
Quantity (% position) : Percentage of the position to be sold in each sell order.

Example : If the first buy order is 0.1 BTC and the second buy order is 0.2 BTC, then the position is 0.3 BTC.
If Quantity (% position) is set to 20, then the first sell order will be 0.06 BTC (20% of 0.3 BTC), the second sell order will be 0.048 BTC (20% of 0.24 BTC) ...


(Auto ?) : If this option is enabled, the bot will automatically sell part of your position.
The quantity sold depends on the volatility of the last 30 days : the higher the volatility, the more it sells, and the lower the volatility, the less it sells.
The minimum sale defined is 10%, while the maximum sale will not exceed 50%.

└> Min. deviation (%) : Minimum percentage of price deviation to trigger a sale.

Example : If Average price of BTC is 30 000 USDT and Min. deviation is 10%, then the first sell order will be at least 33 000 USDT, the second sell order will be at least 36 300 USDT ...
Note : If value is set to 0 : Disabled


(Auto ?) : If this option is activated, the bot automatically determines the sell minimum deviation percentage.
The deviation set depends on the volatility of the last 30 days : the higher the volatility, the higher the deviation, and the lower the volatility, the lower the deviation.


A start and end date defines when the script should generate buy and sell positions :

📆 Date settings
Start date : Indicate the script launch date (If it’s a new launch, you must choose today’s date before creating your TradingView alert).
End date : Enter the date on which you want the script to stop.


Other parameters can be configured to fine-tune buys and sells :

⏲️ Trading session settings
Days : Allows you to select the specific days on which the script will be active, offering the possibility of excluding certain days.

🏛️ Exchange settings
Fees (%) : Indicate the percentage fee applied by the exchange platform on each transaction.
Price spread (%) : Specifies the price spread to be considered for realistic order adjustment.

🤖 Bot settings
Add to Position ? : Allows tokens to be manually added to the position when the script is launched.
└> How much ? (Base) : Number of tokens to add.
└> Cost ? ($) : Stable coins amount of addition to position.

These settings are included in the calculation when an order is triggered.


Advanced visual customization options can be modified :

🎨 Visual settings
TradingView Theme : Choose between a light or dark theme for the bot interface.
Panel : Enables or disables the display of the information panel on the graph, and modifies its size and alignment.
Positions : Show or hide buy and sell position labels on the chart, and modify their size and appearance (several display modes : basic, simple, advanced).
Average price : Enables or disables the display of the average price line and modifies its size and color.
Simulator : Enables or disables the ATH percentage-based simulator line and modifies its size and color.
Trading session : Displays or hides the background of specified trading sessions.
Hide warning messages ? : Hide or show warning messages on graph.


A profit simulator can be configured :

🕹️ Simulator settings
Price (% ATH) : Determines a percentage of the token's ATH to simulate potential gains if the token reaches this price level again.


Users can also activate buying and selling alerts in the settings :

🤖 Bot settings
START THE BOT ? » ALERTS ON : REAL MODE : Enable or disable the bot to execute real orders based on alerts.
Mode FULL Auto ? : Enables the Mode FULL Auto, requiring additional configuration for connection to exchange APIs.
└> Password FULL Auto : Password required to activate the Mode FULL Auto.

By activating FULL Auto Mode with TradingView's webhook system, the user can connect the script to the APIs of compatible exchanges, and receive notifications of buy and sell orders by e-mail, Telegram or Discord.


On the chart, a panel displays a variety of information, and also a backtesting / result of the script.
Here is a list of elements displayed by the panel :

💻 Informations panel
General :
• Pair
• Exchange
• └> Fees
• └> Price spread
• Period
• Start date
• End date
• Trading days

Buying
• Quantity per order
• └> Mult. quantity
•                 └> Max. quantity
•                 └> If Price > Average price
• └> Min. deviation
•                 └> Mult. deviation
• Min. delay (in days)

Selling
• Quantity (% position)
• └> Min. deviation

Exchange
• Next buy
• Next sell

Backtesting / Results
• No. of buys
• No. of sells
• Average price
• Actual position
• Actual net profit
• └> Simulator
• Last buy
• Last sell


🌌 About default settings

Default settings are defined as an example.
Above in the description, you will find details of each setting.
Here's a description of how user-defined setting categories affect the script's buy and sell positions :

📆 Date : Determines between which time ranges buy and sell positions are generated.
⏲️ Trading session : Exclude selected days disables buy positions on deselected days.
🕹️ Simulator : Does not affect buying and selling. It is for information purposes only.
🏛️ Exchange : Fees should be as close as possible to your exchange and price spread depends on your tolerance. This affects buy and sell position.
🔵 Buy : Depending on your investment capacity and risk management, these settings have an impact on buy positions.
🟢 Sell : These settings determine profit-taking. This has an impact on sell positions.
🎨 Visual : Does not affect buy and sell positions. For information only.
🤖 Bot : This part is mainly used to use the script with TradingView alerts. Only the 'Add to position' option affects buy and sell positions.

Once you've set all your settings for the script, you can view the backtesting displayed in the panel on the chart.


🌌 How to use it ?

To summarize how to use this script successfully, please follow these steps :

1. First, choose a cryptocurrency pair (e.g. BTC/USDT).
2. Set a start date (preferably today's date if it's your first launch) and an end date.
3. According on your preferences, you can choose specific trading days, or default to all days of the week.
4. Depending on your exchange, you can set fees and a price spread.
5. Then, based on your portfolio management and investment capabilities, define buy and sell parameters.
6. You can set the bot's appearance on the chart.
7. Once you have configured your settings, you can choose a simulation price.
8. Finally, to activate TradingView Alerts, check the box START THE BOT ? ALERTS ON : REAL MODE.


🌌 Overview

Here's a preview of the script with a few screenshots :

BTC/USDT • Basic display

SOL/USDT • Simple display

XRP/USDT • Advanced display

MATIC/USDT • Light theme

Script settings


🌌 Why do I have to pay ?

BotDCA uses advanced indicators and complex calculations to identify buying and selling opportunities.
With TradingView's alert system, it automates your investment strategy, eliminating the need for constant manual analysis and constant market monitoring.
This saves you precious time.

With adjustable buy and sell settings, you can customize the script to suit your risk tolerance and investment objectives.
This flexibility adds considerable value, allowing you to optimize the script to suit your situation.

Paid access ensures that you benefit from ongoing support and updates, which are essential for maintaining the script's effectiveness.


🌌 Disclaimer

This script is provided for educational purposes only and should not be construed as investment advice.
Users should be aware that trading in the financial markets involves risks, and that past performance of a script does not guarantee future results.
It is strongly recommended that you carry out a detailed analysis and consider your financial situation and risk tolerance before committing yourself to trading/investing.
Информация о релизе:
Version 1.0.1

Add : New warning message when Quantity per order ($) > Max. quantity ($)
Change : Average price line is now colored Light Sky Blue
Change : Tooltip for input BUY > Max. quantity ($) now displays '0 = Disabled'
Fix : Warning message for input SELL > Min. deviation (%) is now fixed
Other : Code cleanup
Информация о релизе:
Version 1.1.0

Add : User can now choose which signals the bot should generate : Buy & Sell, Buy (only) or Sell (only)
Add : A label is added to the chart to indicate the bot's launch date (and if user has added funds to the position)
Add : New warning message when start date time is different from 00:00
Add : New warning message when Signals is set to Sell (only) but no crypto has been added to Position
Add : New warning message when PIN Code contains something other than digits
Change : Title now includes the version of BotDCA
Change : Password FULL Auto is renamed to PIN Code FULL Auto
Change : Cost ? ($) input specifies via a tooltip that 0 = Free
Change : Default fee changes from 0.075% to 0.1%
Fix : Average price calculation is now correct when crypto are added to Position
Other : Code cleanup
Информация о релизе:
Version 1.1.1

Fix : Situation is fixed when start date is below the first candle on the chart
Fix : Inputs are now correctly aligned on computer
Информация о релизе:
Version 1.1.2

Add : User can now define a minimum price for sell orders
Add : A new style input displays (or not) a minimum price line for sell orders
Change : Buy inputs have been reorganized
Other : Code cleanup
Информация о релизе:
Version 1.2.0

Add : Total invested is now displayed on the panel and is included in alerts
Add : New warning message when end date time is different from 00:00
Change : The formula for calculating Net profit (%) now uses the total invested
Change : Simulator input group has been moved after Sell input group
Change : Profit simulator now disabled by default
Change : Panel backtesting section has been reorganized
Fix : Profit simulator is now hidden on the graph and on the panel when the input value is 0
Fix : Average price and its value are now correctly displayed in Backtesting mode
Fix : For Buy (only) and Sell (only) signals, elements in the Backtesting / Results section of the panel appear correctly
Fix : For alerts, the buy/sell amount is correctly rounded
Информация о релизе:
Version 1.2.1

Fix : Calculation for Next buy has been fixed
Информация о релизе:
Version 1.3.0

Add : New Buy input 'Increment (+)'
Add : BotDCA algorithm now adapted for H4 timeframe thanks to the new increment setting
Add : New warning message when Min. delay is set to 0 and Increment is > 0
Change : Default Mult. quantity (x) changes from to 2.0 to 1.5
Change : Buying help message has been enhanced
Change : Buy inputs have been reorganized
Change : Input Min. delay (in days) has been renamed to Min. delay (in candles)
Change : Value of Min.delay (in candles) displayed on panel is now dynamic
Информация о релизе:
Version 1.3.1

Add : New warning message when Increment (+) is > 0 in daily timeframe
Fix : No more warning message when timeframe is not in daily and start/end date time is not equal to 00:00
Fix : Adding funds to the position is no longer defined as a buy order for warning messages
Other : Code cleanup
Информация о релизе:
Version 1.4.0

Add : Users can now define a variation for the sell orders min deviation
Change : Sell orders variation now appear on the panel
Информация о релизе:
Version 1.4.1

Add : New warning message when start/end date time is incorrect for H4 timeframe
Change : Auto mode for Quantity (% position) has been optimized. Now the bot sells a larger quantity during strong bullish periods
Информация о релизе:
Version 1.4.2

Fix : Warning messages are now displayed correctly depending on the Signals input

Website : botdca.com
Documentation : botdca.com/documentation
Discord : discord.gg/uY8GbKJDv4
Скрипт с ограниченным доступом

Доступ к этому скрипту разрешён только для пользователей, авторизованных автором, и для этого обычно требуется оплата. Вы можете добавить скрипт в список избранных, но использовать его можно будет только после запроса на доступ и получения разрешения от автора. Свяжитесь с Cryptotenyx, чтобы узнать больше, или следуйте инструкциям автора ниже.

TradingView предлагает не платить за скрипт и не использовать его, если вы на 100% не доверяете автору и не понимаете, как этот скрипт работает. Во многих случаях вы можете найти хорошую альтернативу с открытым кодом бесплатно в наших Скриптах сообщества.

Отказ от ответственности

Все виды контента, которые вы можете увидеть на TradingView, не являются финансовыми, инвестиционными, торговыми или любыми другими рекомендациями. Мы не предоставляем советы по покупке и продаже активов. Подробнее — в Условиях использования TradingView.

Инструкции от автора

To access this script, please use the "Website" link or send me a private message. For more information on how to use the script, please consult the documentation on our website : botdca.com/documentation

Хотите использовать этот скрипт на графике?

Внимание: прочтите это перед тем, как запросить доступ.