This commit is contained in:
olli 2024-09-05 22:35:54 +02:00
parent f34c5ddf89
commit 71ff0b28a8

View File

@ -27,17 +27,17 @@ You should have received a copy of the GNU General Public License along with dab
Various data sources such as finance.yahoo.com and crypto exchanges available via ccxt are used. please check whether this is legal in your region before use. Various data sources such as finance.yahoo.com and crypto exchanges available via ccxt are used. please check whether this is legal in your region before use.
- query1.finance.yahoo.com (economic data,...) - query1.finance.yahoo.com (economic data,...)
- 30rates.com (forecast) - 30rates.com (forecast)
- api.coingecko.com (Market-Cap)
- fapi.binance.com (OpenInterest,...) - fapi.binance.com (OpenInterest,...)
- api.alternative.me (Fear and Greed) - api.alternative.me (Fear and Greed)
- https://unpkg.com/lightweight-charts/dist/lightweight-charts.standalone.production.js (TradingView Lightweitgt Charts) - https://unpkg.com/lightweight-charts/dist/lightweight-charts.standalone.production.js (TradingView Lightweitgt Charts)
- ... - ...
## dependencies on other software products ## dependencies to other software
- CCXT (https://www.ccxt.com | https://github.com/ccxt/ccxt) - CCXT (https://www.ccxt.com | https://github.com/ccxt/ccxt)
- TradingView Lightweitgt Charts (https://www.tradingview.com/lightweight-charts/ | https://github.com/tradingview/lightweight-charts) - TradingView Lightweitgt Charts (https://www.tradingview.com/lightweight-charts/ | https://github.com/tradingview/lightweight-charts)
- bash, python - bash, python
- several linux programs like bc, wget,... - several default linux programs like bc, wget,...
- gaboshlib (https://gitea.ds9.dedyn.io/olli/gaboshlib)
- ... - ...
## Objective ## Objective
@ -56,7 +56,7 @@ I thought this fits quite well to the cryptotrading world and that's why I chose
## Structure ## Structure
The Bot is splitted in the following parts: The Bot is splitted in the following parts:
- dabo-bot: Basic Bot woth buy and sell decisions based on self-definable strategies - dabo-bot: Basic Bot with buy and sell decisions based on self-definable strategies
- dabo-symbols_ticker: Ticker for current symbols and prices - dabo-symbols_ticker: Ticker for current symbols and prices
- dabo-ohlcv-candles: Continuously collect OHLCV data - dabo-ohlcv-candles: Continuously collect OHLCV data
- dabo-indicators: Continuously calculate indicators and other data - dabo-indicators: Continuously calculate indicators and other data
@ -65,22 +65,21 @@ The Bot is splitted in the following parts:
- dabo-webpage: Continuously creates webpage overview (readonly) - dabo-webpage: Continuously creates webpage overview (readonly)
- dabo-web: Webserver for webpage overview - dabo-web: Webserver for webpage overview
For cummunicating with the exchange APIs CCXT is used: https://github.com/ccxt/ccxt
gaboshlib
Each part runs parallel to the others in its own docker-container. Each part runs parallel to the others in its own docker-container.
## Features ## Features
### General: ### General:
- theoretically compatible to supported CCXT exchanges. Tested with Phemex. Please let me know if there are problems with other exchanges. - theoretically compatible to supported CCXT exchanges. Tested with Phemex Contract trading. Please let me know your experiences with other exchanges.
- parallel processing in separate docker containers - parallel processing in separate non-root docker containers
- Notifications via Matrix Messenger to groups
### Dabo Bot ### Dabo Bot
- place limit and market orders and supports ... - place limit and market orders and supports ...
- ... leverage trading - ... leverage trading
- ... short trades - ... short trades
- ... margins cross and isolated - ... margins cross and isolated
- ... stoploss and takeprofit
- multiple different strategies possible at the same time
### Dabo Symbol Ticker ### Dabo Symbol Ticker
- automatically finds all supported tokens and pairs and fetches continiously ... - automatically finds all supported tokens and pairs and fetches continiously ...
- ... symbols - ... symbols
@ -96,42 +95,16 @@ OHLCV = Open, High, Low, Close and Volume of a time unit
- self-calculated EMA12, 26 ,50, 100, 200, 400 and 800 - self-calculated EMA12, 26 ,50, 100, 200, 400 and 800
- self-calculated RSI5, 14, 21 - self-calculated RSI5, 14, 21
- self-calculated MACD - self-calculated MACD
- self-calculated significant levels (support/resist)
### Dabo Market Data ### Dabo Market Data
- Yahoo Finance - Yahoo Finance
### Dabo Orders ### Dabo Orders
## Dabo Transaction History ### Dabo Transaction History
- Support of additional Exchnages/Brokers JustTrade (CSV-Import) and Bitpanda (API+CSV-Import) - Support of additional Exchnages/Brokers JustTrade (CSV-Import) and Bitpanda (API+CSV-Import)
- German tax calculation
### Dabo Webpage ### Dabo Webpage
- ReadOnly Overview - ReadOnly Overview
- Consideration of trading fees
- Automatic selection of cryptocurrencies to invest in
- Filtering of cryptocurrencies by market capitalization (data via coingecko API) e.g. only trade the 50 largest by market capitalization if available on the exchange
- Notifications via Matrix Messenger to groups
- Individually selectable percentage of available capital per trade
- automatic definition of time intervals (e.g. every minute / every five minutes) based on the change of the rates
- Monitoring of overall market performance via own market performance index based for example on the MSCI World, leading currencies like BTC and ETH and their forecasts.
- Emergency stop if balance falls below defined value
- Recording of available price values incl. RSI and MACD indicators of available cryptocurrencies
- Analysis tool for collected historical values to try out buy or sell conditions based on them
- ReadOnly web interface for overview
- Runnable in a non-root docker containe
- multiple different buy and sell strategies possible at the same time
- Hedge mode (long and short positions the same time) not supported
### Buy conditions
- definable RSI Indicator signals min/max (RSI5, 14 and 21)
- definable MACD signals min/max
- definable minimum growth in a definable time period
### Sell conditions
- sell at defined loss limit
- hold if the result would be negative
- sell after certain time even if loss exists
- definable RSI Indicator signals min/max
- definable MACD signals min/max
## Why bash? ## Why bash?
Yes, bash is not a language in which you write something like this in a normal way. Yes, bash is not a language in which you write something like this in a normal way.
@ -363,9 +336,21 @@ ${f_tickers_array[ETH${CURRENCY}]}
``` ```
## Future ideas/featrues and todosa
## Future ideas/featrues - Partial StopLoss and TakeProfit
- Crypto preferences (While/Blacklist for certain currencies) - Fibonacci Levels
- Overview trades/profits/losses for tax declaration - Fear and Greed Indicator (api.alternative.me)
- Support for decentralized exchanges like uniswap to gain more "security" - Forecasts
- US Government data like unemployment rates https://www.bls.gov/developers/api_unix.htm#unix1
- Example strategie's
- Chart improvements
- Volumeindicator and for example RSI on volume values
- Support for decentralized exchanges like uniswap
- Archive/compress old or large CSV-History-files - Archive/compress old or large CSV-History-files
- Hedge mode (long and short positions the same time)
- Emergency stop if balance falls below defined value
- Analysis tool for collected historical values to try out buy or sell conditions based on them
- Consideration of trading and funding fees
- market-performance?
- OpenInterest (fapi.binance.com)