-
Notifications
You must be signed in to change notification settings - Fork 202
/
config_advanced.env.example
125 lines (87 loc) · 5.76 KB
/
config_advanced.env.example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# If set to true, the program will enable protection against adverse selection.
# https://www.princeton.edu/~markus/teaching/Eco467/05Lecture/04a_MarketMaking.pdf
ENABLE_ADVERSE_SELECTION_GUARD=false
# The time interval of market data buffer.
ADVERSE_SELECTION_GUARD_MARKET_DATA_SAMPLE_INTERVAL_SECONDS=1
# The oldest time that a market data point is kept in the buffer.
ADVERSE_SELECTION_GUARD_MARKET_DATA_SAMPLE_BUFFER_SIZE_SECONDS=300
# If set to true, the program will enable use of ROC.
# https://www.investopedia.com/terms/r/rateofchange.asp
ENABLE_ADVERSE_SELECTION_GUARD_BY_ROC=false
# The number of observations needed to calculate ROC.
ADVERSE_SELECTION_GUARD_TRIGGER_ROC_NUM_OBSERVATIONS=20
# Trigger adverse selection guard actions if ROC is below this number.
ADVERSE_SELECTION_GUARD_TRIGGER_ROC_MINIMUM=0
# Trigger adverse selection guard actions if ROC is above this number.
ADVERSE_SELECTION_GUARD_TRIGGER_ROC_MAXIMUM=0
# If set to true, the program will reverse the one-sided order's direction (i.e. change buy to sell or change sell to buy).
ADVERSE_SELECTION_GUARD_TRIGGER_ROC_ORDER_DIRECTION_REVERSE=false
# If set to true, the program will enable use of RSI.
# https://www.investopedia.com/terms/r/rsi.asp. Only step one is used in the calculation.
ENABLE_ADVERSE_SELECTION_GUARD_BY_RSI=false
# The number of observations needed to calculate RSI.
ADVERSE_SELECTION_GUARD_TRIGGER_RSI_NUM_OBSERVATIONS=15
# Trigger adverse selection guard actions if RSI is below this number.
ADVERSE_SELECTION_GUARD_TRIGGER_RSI_MINIMUM=0
# Trigger adverse selection guard actions if RSI is above this number.
ADVERSE_SELECTION_GUARD_TRIGGER_RSI_MAXIMUM=0
# If set to true, the program will reverse the one-sided order's direction (i.e. change buy to sell or change sell to buy).
ADVERSE_SELECTION_GUARD_TRIGGER_RSI_ORDER_DIRECTION_REVERSE=false
# If set to true, the program will enable use of Roll Coefficient.
# https://medium.com/open-crypto-market-data-initiative/from-classical-paper-to-practical-trader-a-quantitative-journey-part-vi-45b74709eda
ENABLE_ADVERSE_SELECTION_GUARD_BY_ROLL_CORRELATION_COEFFICIENT=false
# The number of observations needed to calculate Roll Coefficient.
ADVERSE_SELECTION_GUARD_TRIGGER_ROLL_CORRELATION_COEFFICIENT_NUM_OBSERVATIONS=20
# Trigger adverse selection guard actions if Roll Coefficient is above this number.
ADVERSE_SELECTION_GUARD_TRIGGER_ROLL_CORRELATION_COEFFICIENT_MAXIMUM=0
# If set to true, the program will reverse the one-sided order's direction (i.e. change buy to sell or change sell to buy).
ADVERSE_SELECTION_GUARD_TRIGGER_ROLL_CORRELATION_COEFFICIENT_ORDER_DIRECTION_REVERSE=false
# If set to true, the program will enable use of inventory limit.
ENABLE_ADVERSE_SELECTION_GUARD_BY_INVENTORY_LIMIT=false
# Trigger adverse selection guard actions if inventory base quote ratio is below this number.
ADVERSE_SELECTION_GUARD_TRIGGER_INVENTORY_BASE_QUOTE_RATIO_MINIMUM=0.05
# Trigger adverse selection guard actions if inventory base quote ratio is above this number.
ADVERSE_SELECTION_GUARD_TRIGGER_INVENTORY_BASE_QUOTE_RATIO_MAXIMUM=20
# If set to true, the program will enable use of inventory depletion.
ENABLE_ADVERSE_SELECTION_GUARD_BY_INVENTORY_DEPLETION=false
# Take this action if adverse selection was found.
# 'none': Do nothing, i.e. the program will not submit any orders.
# 'make': Submit one-side market making order at best possible price.
# 'take': Submit one-side market taking order at best possible price.
ADVERSE_SELECTION_GUARD_ACTION_TYPE=none
# If set to e.g. 0.1, a single buy or sell order's quantity will use 10% of total available capital ( = base available
# capital + quote available capital).
ADVERSE_SELECTION_GUARD_ACTION_ORDER_QUANTITY_PROPORTION=0.1
# If set to true, the program will take ADVERSE_SELECTION_GUARD_ACTION_ORDER_QUANTITY_PROPORTION as relative to the
# available capital of one asset instead of both assets.
ADVERSE_SELECTION_GUARD_ACTION_ORDER_QUANTITY_PROPORTION_RELATIVE_TO_ONE_ASSET=false
# If set to e.g. 15, orders will be canceled and replaced after 15 seconds.
# If not set to be equal to ORDER_REFRESH_INTERVAL_SECONDS, it is incompatible with ORDER_REFRESH_INTERVAL_OFFSET_SECONDS
ADVERSE_SELECTION_GUARD_ACTION_ORDER_REFRESH_INTERVAL_SECONDS=15
# If set to false, the program won't do any market making.
ENABLE_MARKET_MAKING=true
# start: only applicable to paper trade and backtest
# If set to e.g. 0.001, for a taker each trade will carry a fee of 0.1% of the transacted value. Only needed if
# ADVERSE_SELECTION_GUARD_ACTION_TYPE is set to 'take'.
TAKER_FEE=0.001
# If set to e.g. USD, for a taker buyer the trading fee is charged in USD. Only needed if
# ADVERSE_SELECTION_GUARD_ACTION_TYPE is set to 'take'.
TAKER_BUYER_FEE_ASSET=USD
# If set to e.g. USD, for a taker seller the trading fee is charged in USD. Only needed if
# ADVERSE_SELECTION_GUARD_ACTION_TYPE is set to 'take'.
TAKER_SELLER_FEE_ASSET=USD
# end: only applicable to paper trade and backtest
# start: only applicable to backtest
# The base asset. Only needed if you want to start many backtest processes simultaneously.
# See e.g. https://api.exchange.coinbase.com/products/BTC-USD
BASE_ASSET_OVERRIDE=''
# The quote asset. Only needed if you want to start many backtest processes simultaneously.
# See e.g. https://api.exchange.coinbase.com/products/BTC-USD
QUOTE_ASSET_OVERRIDE=''
# The smallest value that the order price can increment. Only needed if you want to start many backtest processes simultaneously.
# See e.g. https://api.exchange.coinbase.com/products/BTC-USD
ORDER_PRICE_INCREMENT_OVERRIDE=''
# The smallest value that the order quantity can increment. Only needed if you want to start many backtest processes simultaneously.
# See e.g. https://api.exchange.coinbase.com/products/BTC-USD
ORDER_QUANTITY_INCREMENT_OVERRIDE=''
# end: only applicable to backtest