4 releases (1 stable)
1.0.0 | Sep 17, 2024 |
---|---|
0.4.3 | Sep 17, 2024 |
0.4.0 | Sep 3, 2024 |
0.1.1 | May 28, 2024 |
#79 in Finance
135KB
3K
SLoC
Discretionary Engine
Places and follows a position from a definition of what the target position is
Usage
Example query:
discretionary_engine new --size=-0.1 --symbol=ADAUSDT '-f=sar:t5m:s0.07:i0.02:m0.15' '-f=tpsl:t0.4884:s0.5190'
This would open a new position on ADA, where:
- Side: SELL, as the provided size is negative
- Size: 10% of the total balance
- rm_protocol_1: sar indicator, following the price action on 5m timeframe, with starting value 0.07, increase of 0.02, max 0.15
- rm_protocol_2: static tp and sl, which are set at 0.4884 and 0.5190, respectively
Coverage
Currently only working with Binance.
Configuration
Config is read from ${HOME}/.config/discretionary_engine.toml by default, but can also be specified via --config
cli argument.
An example config can be found in ./examples/config.toml
Assumptions
- strictly one asset per
Position
. No methods for acquiring several assets at once will ever be introduced.
Current (may change in the future)
-
no two
Position
s are opened on the same symbol -
no new
Position
s on account are opened outside of the engine -
orders are placed immediately (not that far off, as most of the time we will spam the thing until it accepts, and only other action that will need to be taken is to prevent any increases in exposure while we have any mismatches).
This repository follows my best practices.
License
Licensed under either of Apache License, Version 2.0 or MIT license at your option.Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~25–40MB
~640K SLoC