Commit Graph

719 Commits

Author SHA1 Message Date
Matthias
cadde3ab6d Check if markets.info is a dict before using it 2019-12-27 16:15:44 +01:00
Matthias
21622ac313 Rename get_ticker to fetch_ticker 2019-12-18 16:34:30 +01:00
hroff-1902
39197458f4
Merge pull request #2661 from freqtrade/wallet_dry
Introduce Dry-Run Wallet
2019-12-16 14:00:11 +03:00
Matthias
c741b67c3c Adjust tests for dry_run wallet simulation 2019-12-15 10:39:52 +01:00
Matthias
931d24b5a8 Have dry_run_wallet default to 1000 2019-12-15 09:26:17 +01:00
Matthias
2275a1539e Remove default symbol from get_fee() 2019-12-14 13:22:42 +01:00
Matthias
b69f5afaaf Round amount to precision also for dry-runs 2019-12-13 06:59:10 +01:00
hroff-1902
6174a5dd55 Reimplement adjustment of ccxt 'has' with more generic ccxt_config class attribute 2019-11-13 20:22:23 +03:00
hroff-1902
e26bbc7de8 Add fix for bibox exchange 2019-11-13 19:50:54 +03:00
Matthias
08aedc18e1 Exchange ticker_interval with timeframe in some more places 2019-11-12 15:13:06 +01:00
Matthias
da57396d07 Fix UTC handling of timestamp() conversation in fetch_my_trades 2019-11-08 06:55:07 +01:00
Matthias
9a42afe0be Move exchange-constants and retriers to exchange.common 2019-10-31 10:59:17 +01:00
Matthias
132a4da7cf Small style fixes and adjusted tests 2019-10-27 10:56:38 +01:00
Matthias
73f5bff9c5 Add validation to make sure strategies work on that exchange 2019-10-27 10:38:21 +01:00
hroff-1902
b26faa13bd Call validate_timeframe only when validate is True 2019-10-22 13:51:36 +03:00
hroff-1902
ad5f7e1581 Merge remote-tracking branch 'origin/develop' into list-pairs2 2019-10-22 12:30:39 +03:00
hroff-1902
3cf95f9f6c
Merge pull request #2369 from freqtrade/disable_exchangevalidate
Allow skipping of exchange validation
2019-10-22 12:22:48 +03:00
hroff-1902
1bc63288a3
Merge branch 'develop' into list-pairs2 2019-10-20 23:22:45 +03:00
hroff-1902
47fabca1d9
Merge pull request #2372 from xmatthias/kraken_ohlcv_emulate
download tick-based data to emulate candles
2019-10-19 19:32:37 +03:00
Matthias
fd22c87295 Some minor cleanups to trades download methods and docs 2019-10-19 10:05:30 +02:00
hroff-1902
8564affdf0 Add tests for Exchange.get_markets() 2019-10-17 22:45:20 +03:00
hroff-1902
b6e26c82ea Replace market_is_pair() by symbol_is_pair() 2019-10-17 18:44:25 +03:00
hroff-1902
1e61263a28 More sofisticated market_is_pair(), taken from #1989 2019-10-17 17:49:04 +03:00
hroff-1902
92fda0f76c Allow --base and --quote be lists of currencies 2019-10-17 02:09:19 +03:00
hroff-1902
6e27c47dee Handle properly exchanges with no active flag set for markets 2019-10-14 13:32:39 +03:00
Matthias
76ad5bea0e Load correct exchange class
closes #2371
2019-10-14 11:36:42 +02:00
Matthias
13e80e449c cleanup and better docstring 2019-10-14 06:22:10 +02:00
Matthias
762ae3a598 Extend tests 2019-10-13 13:15:22 +02:00
Matthias
640d58eb13 Remove unneeded checks 2019-10-13 13:15:22 +02:00
Matthias
fa8c61382b Remove unneeded exception handlers 2019-10-13 13:15:22 +02:00
Matthias
16d6914b15 Add test to cover missing line 2019-10-13 13:15:22 +02:00
Matthias
05e473642b Small adjustments to get_trade_history 2019-10-13 13:15:22 +02:00
Matthias
0d592f6c55 Refactor trade downloading to handle exceptions only once 2019-10-13 13:15:22 +02:00
Matthias
9584629f50 Rename argument from dl_path to datadir 2019-10-13 13:15:22 +02:00
Matthias
1f79ca9539 Remove duplicate check 2019-10-13 13:15:22 +02:00
Matthias
1d8fc97053 Fix duplicate trade error, rename some methods 2019-10-13 13:15:22 +02:00
Matthias
57dee794d1 Fix end-reached for id-based trade-download 2019-10-13 13:15:22 +02:00
Matthias
2c0bb71a6e Add download_trades_history() 2019-10-13 13:15:22 +02:00
Matthias
ab8f638e44 Move id/time detection to get_historic_trades method 2019-10-13 13:15:22 +02:00
Matthias
77c367ad1d First draft of async get_trade methods 2019-10-13 13:15:22 +02:00
Matthias
26b3148904 Add build_ohlcv wrapper 2019-10-13 13:15:22 +02:00
Matthias
27dc9ca799 Add trades_pagination attributes 2019-10-13 13:15:22 +02:00
Matthias
baad1a5166 Explain _params element 2019-10-13 13:15:22 +02:00
hroff-1902
7cf7982565 Add list-pairs and list-markets subcommands 2019-10-13 13:12:20 +03:00
Matthias
f3f6e9d365 Allow skipping of exchange validation 2019-10-13 10:33:22 +02:00
hroff-1902
946b8c29d7
Merge pull request #2317 from hroff-1902/list-timeframes
Add list-timeframes subcommand
2019-10-06 16:28:15 +03:00
hroff-1902
d1fa5f307b Add --all option to list-exchanges 2019-10-01 00:33:33 +03:00
hroff-1902
7617dd5029 Add separate message for hitbtc exchange 2019-09-30 20:01:55 +03:00
hroff-1902
272c977d08 Add exchanges to the list of bad exchanges 2019-09-30 03:55:55 +03:00
hroff-1902
75446d8195 Refactor list-timeframes command with the use of the Exchange class methods 2019-09-29 23:18:04 +03:00
hroff-1902
c5f455d660
Merge pull request #2256 from freqtrade/kraken_balance
fix Kraken balance calculation
2019-09-12 23:12:55 +03:00
Matthias
6c5eff4a7c Use List of Tuples, remove unused columns 2019-09-12 07:03:52 +02:00
hroff-1902
849d694c27 Don't inherit from object 2019-09-12 04:39:52 +03:00
Matthias
3b4bbe7a18 Implement get_balances which uses open_orders 2019-09-11 19:43:16 +02:00
Matthias
c01953daf2 Remove kraken block 2019-09-11 06:57:58 +02:00
Matthias
48ac37a1b8 BLock kraken trading - it's not working at the moment 2019-09-05 20:16:09 +02:00
hroff-1902
caec5ac941
Merge pull request #2206 from freqtrade/sloe_handling
Improve stoploss on exchange handling
2019-09-04 10:00:53 +03:00
Matthias
aae9c3194f Reenable stoploss_on_exchange for dry-run 2019-09-01 17:48:06 +02:00
Matthias
f91557f549 Add space to exception message 2019-09-01 10:17:17 +02:00
Matthias
9f53e9f5dd Raise InvalidOrder error when stoploss-creation fails 2019-09-01 09:08:35 +02:00
Matthias
b5789203f2
Merge branch 'develop' into timeframe_use_ccxt 2019-08-26 19:48:58 +02:00
Matthias
565a543b7b Use ccxt base methods to round timeframe 2019-08-25 10:34:56 +02:00
Matthias
a4c8b5bf5d Move binance-specific test to test_binance.py 2019-08-25 10:08:06 +02:00
Matthias
2c66b33fd1 Adapt some tests to use Binance subclass for stoplosslimit 2019-08-25 09:57:21 +02:00
Matthias
defa1c027d Move stoploss_limit to binance subclass 2019-08-25 09:50:37 +02:00
Matthias
ea179a8e38 stoploss_limit shall not use create_order()
It needs to handle exceptions differently
2019-08-25 09:43:10 +02:00
Matthias
8a17615b5a move exceptionhandling from create_order() to calling functions 2019-08-25 09:42:02 +02:00
hroff-1902
d19b11a00f exchange cosmetics 2019-08-22 20:01:41 +03:00
Matthias
dc35a8022b
Merge pull request #2157 from freqtrade/fix/create_order_crash
create market order crash if exchange raises an exception
2019-08-20 06:22:43 +02:00
Matthias
a4ede02ced Gracefully handle problems with dry-run orders 2019-08-18 19:38:23 +02:00
Matthias
045ac1019e Split test for buy-orders too 2019-08-18 15:58:53 +02:00
Matthias
ee7ba96e85 Don't do calculations in exception handlers when one element can be None
fixes #2011
2019-08-18 15:46:38 +02:00
Matthias
93cf2cd19b
Merge pull request #2135 from freqtrade/ohlcv_docstring
[minor] Improve docstring for some downloading methods
2019-08-15 16:23:42 +02:00
Matthias
14c4854987 Merge branch 'develop' into lock_pairs 2019-08-15 06:56:39 +02:00
Matthias
9f26c4ebdc Merge branch 'develop' into fix/sell_order_hanging 2019-08-15 06:46:12 +02:00
Matthias
11790fbf01 Fix typos in docstrings 2019-08-15 06:37:26 +02:00
Matthias
84baef922c Rename get_history to get_historic_ohlcv 2019-08-14 10:14:54 +02:00
Matthias
4da2bfefb7 Improve docstring for some downloading methods 2019-08-14 09:37:17 +02:00
Matthias
3c589bb877 fail if known bad exchanges are detcted 2019-08-13 08:27:46 +02:00
Matthias
d8dbea9d5b Add exchange_reasons to bad exchanges 2019-08-13 08:20:35 +02:00
Matthias
ca739f71fb Fix default argument handling for timeframe_to_nextdate 2019-08-12 20:39:24 +02:00
Matthias
2600cb7b64 simplify timeframe_next_date calculation 2019-08-12 20:04:19 +02:00
Matthias
444ee274d7 close dry-run orders in case of market orders 2019-08-12 16:46:45 +02:00
Matthias
1ce63b5b42 Reformat tests to be easier readable 2019-08-12 16:25:01 +02:00
Matthias
dd0ba183f8 Add timeframe_to_prev_candle 2019-08-12 16:11:43 +02:00
Matthias
933a553dd4 Convert timeframe to next date 2019-08-12 16:08:23 +02:00
Matthias
a90ced1f38 Since arguments are in milliseconds integer throughout ccxt.
Explained here: https://github.com/ccxt/ccxt/issues/5636

fixes #2093
2019-08-06 20:09:09 +02:00
Matthias
bbd58e772e Warn when using restricted pairs
As noted in https://github.com/ccxt/ccxt/issues/5624, there is currently
no way to detect if a user is impacted by this or not prior to creating
a order.
2019-08-03 13:14:36 +02:00
Matthias
4b8b2f7c5b Use raise xxx from e to have a nicer traceback 2019-07-25 20:06:20 +02:00
Matthias
9887cb997e Check if Price is needed for market orders
This is currently the case for:
cex, coinex, cointiger, fcoin, fcoinjp, hadax, huobipro, huobiru, uex,
2019-07-14 14:17:09 +02:00
Matthias
61b24180f0
Merge pull request #1998 from freqtrade/fix/pax_balance
Support all types of pairs for /balance
2019-07-08 16:31:57 +02:00
Matthias
6c2415d32f Rename parameters from pair to curr 2019-07-07 06:36:35 +02:00
Matthias
40fe2d2c16 Test get_valid_pair_combination 2019-07-03 20:20:12 +02:00
Matthias
fcdbe846e5 Fix #1981 - Detect reverted currency pairs 2019-07-03 20:06:50 +02:00
Matthias
e19c192570
Merge pull request #1994 from hroff-1902/fix-validate_timeframes
fix validate_timeframes()
2019-07-03 11:11:28 +02:00
hroff-1902
b80cef964e fix validate_timeframes(); test added 2019-07-03 11:18:39 +03:00
hroff-1902
d41b8cc96e catch ccxt.BaseError 2019-07-03 05:13:41 +03:00
hroff-1902
91fb9d0113 fix #1995 2019-07-03 05:02:44 +03:00
Matthias
0d601fd111 Remove logger message 2019-07-01 06:18:28 +02:00
Matthias
0c7d14fe50 Check if timeframes is available and fail gracefully otherwise 2019-06-30 20:30:31 +02:00
AlexV
e8796e009c adding bitstamp to list of bad exchanges. 2019-06-29 17:20:10 +02:00
Matthias
a07653a6cc Merge branch 'develop' into fix/validate_dataframe 2019-06-24 06:21:08 +02:00
Matthias
89ff614e1d Add pair as parameter, and warn when fillup was necessary 2019-06-15 13:46:19 +02:00
hroff-1902
0cc2210f22 wording fixed 2019-06-12 22:53:43 +03:00
hroff-1902
db6ccef6bd return back check in init_ccxt() 2019-06-11 13:43:29 +03:00
hroff-1902
676e730013 enhance check_exchange 2019-06-11 13:18:35 +03:00
Matthias
9f2e0b11d1 Parametrize ohlcv_candle_limit (per call) 2019-06-09 14:52:17 +02:00
Matthias
fdbbefdddd Make drop_incomplete optional 2019-06-09 14:35:58 +02:00
Matthias
7108a2e57d Add deep_merge for _ft_has and test 2019-06-09 14:06:29 +02:00
hroff-1902
0e228acbfb minor: exchange debug logging humanized 2019-05-25 22:42:17 +03:00
Matthias
45ecbc91e8 Use BaseError, not NetworkError in exception handler 2019-04-24 22:20:05 +02:00
Matthias
65dcb6acea Catch errors on reload_markets 2019-04-24 21:56:24 +02:00
Matthias
577ccd32f0
Merge pull request #1750 from hroff-1902/ccxt-to-exchange-only
minor: limit usage of ccxt to freqtrade/exchange only
2019-04-19 06:51:08 +02:00
Matthias
43119efaf0 Remove ccxt_rate_limit completely (was deprecated) 2019-04-16 19:41:02 +02:00
hroff-1902
f03acce84c typing of return value corrected 2019-04-11 00:07:27 +03:00
hroff-1902
9fbe573cca limit usage of ccxt to freqtrade/exchange only 2019-04-09 12:27:35 +03:00
Matthias
6856848efc
Merge pull request #1744 from hroff-1902/ccxt-parse_timeframe
cosmetic: rename interval, tick_interval, etc --> ticker_interval
2019-04-08 20:26:36 +02:00
hroff-1902
ebf1126351 cosmetic: rename interval, tick_interval, etc --> ticker_interval 2019-04-07 16:28:53 +03:00
Matthias
4a6c8f3cb2
Merge pull request #1735 from hroff-1902/ccxt-parse_timeframe
Resolution for #1137
2019-04-07 12:52:13 +02:00
Misagh
d294cab933 adding order id to invalidorder exception message 2019-04-06 20:27:03 +02:00
Misagh
2b49a11b2a returning InvalidOrder exception for get_order 2019-04-05 19:46:43 +02:00
hroff-1902
2aa1b43f01 get rid of TICKER_INTERVAL_MINUTES dict, use ccxt's parse_timeframe() instead 2019-04-04 20:56:40 +03:00
Misagh
40df0dcf3d tests fixed 2019-04-02 18:45:18 +02:00
Misagh
99d256422e adding InvalidOrder to exchange 2019-04-02 18:31:03 +02:00
Matthias
9b22d5cab1 Fix typo, add test for validate_order_tif 2019-03-27 20:51:55 +01:00
iuvbio
e15f2ef11a add order_time_in_force in _ft_has and revert binance 2019-03-26 00:49:39 +01:00
iuvbio
4005b8d1d2 remove the if condition for binance 2019-03-25 23:57:14 +01:00
iuvbio
85ac99aee0 move exchange urls to constants 2019-03-25 23:57:14 +01:00
Matthias
35d65bc7d7 Merge branch 'develop' into 'validate_whitelist' 2019-03-21 06:22:48 +01:00
hroff-1902
580ada8c4f exchange cleanup 2019-03-19 20:52:35 +03:00
iuvbio
a241e950f2 prune validate_pairs 2019-03-17 16:04:09 +01:00
misagh
b5034cf535 TSL validator removed from exchange 2019-03-14 09:04:41 +01:00
misagh
9a226ec7e6 conflict with develop resolved 2019-03-14 07:56:21 +01:00
iuvbio
a1841c35ae reset _last_markets_refresh 2019-03-13 20:18:49 +01:00
iuvbio
779bcdd990 remove reload for async api 2019-03-12 16:35:32 +01:00
iuvbio
1a92bf9e8e add test 2019-03-12 16:31:22 +01:00
iuvbio
8741017819 remove get_markets 2019-03-12 16:31:22 +01:00
iuvbio
0d980134e7 add markets reload func 2019-03-12 16:31:22 +01:00
iuvbio
3ad0686bc7 fix typing 2019-03-12 16:31:22 +01:00
iuvbio
df9410cd15 check if markets were loaded 2019-03-12 16:31:22 +01:00
iuvbio
041e9957dd add reload argument 2019-03-12 16:31:22 +01:00
iuvbio
6b97af4a03 add comment 2019-03-12 16:31:22 +01:00
iuvbio
5c840f333f slight change to exception message 2019-03-12 16:31:22 +01:00
iuvbio
47cc04c0a3 use self.markets instead of _api.markets 2019-03-12 16:31:22 +01:00
iuvbio
ccad883256 adjust get_markets 2019-03-12 16:31:22 +01:00
iuvbio
3a2aa54d2a add markets property 2019-03-12 16:31:22 +01:00
iuvbio
d423f58566 replace fetch_markets 2019-03-12 16:31:22 +01:00
misagh
f55d75e7fc TSL validation tests added 2019-03-12 15:35:44 +01:00
misagh
36e95bc868 unnecessary variable removed 2019-03-12 13:10:59 +01:00
misagh
3e40f5c588 if condition simplified 2019-03-12 13:09:27 +01:00
misagh
643262bc6a add trailing stop loss config validator 2019-03-12 13:03:29 +01:00
Matthias
0eb9dd5fe5 Don't use timeInForce for market orders 2019-03-11 20:30:36 +01:00
Matthias
0a2cacbba8 Fix #1637 2019-03-08 21:17:12 +01:00
hroff-1902
b792f00553 exchange cleanup 2019-03-01 02:13:16 +03:00
Matthias
ef26484153 Super() should not be called with parameters
source: https://realpython.com/python-super/
2019-02-26 21:01:50 +01:00
Matthias
6c75b8a36a Remove pair market url 2019-02-26 19:27:28 +01:00
Matthias
006635003e Fix small typos 2019-02-24 20:18:41 +01:00
Matthias
f2fd5205ef Fix typo 2019-02-24 20:13:38 +01:00
Matthias
5c18346cd5 Add typehint to binance dict 2019-02-24 20:01:20 +01:00
Matthias
a05155cb75 Adapt failing test 2019-02-24 19:41:47 +01:00
Matthias
455b168366 add _ft_has to exchangeclass 2019-02-24 19:35:29 +01:00
Matthias
06f486a8eb Add binance exchange subclass 2019-02-24 19:30:05 +01:00
iuvbio
403ed48c3e rename _store_dry_order 2019-02-23 16:28:13 +01:00
iuvbio
ec6794b9ba fix dry_orders 2019-02-23 16:03:15 +01:00
iuvbio
9a097214a6 return complete dry_order in buy and sell 2019-02-22 19:22:48 +01:00
iuvbio
71774bce6f Merge branch 'develop' of https://github.com/freqtrade/freqtrade into order_creation 2019-02-22 19:02:31 +01:00
iuvbio
b79d967371 add tests, further consolidate orders 2019-02-22 01:48:35 +01:00
iuvbio
69bb6ebaf6 fix comments 2019-02-21 22:43:15 +01:00
iuvbio
bf5d2a68f5 Merge branch 'develop' into order_creation 2019-02-21 19:03:29 +01:00
Matthias
e0f426d863 Allow import freqtrade.exchange.* 2019-02-21 06:59:52 +01:00
Matthias
e987a915e8 Rename exchange file 2019-02-21 06:56:22 +01:00
Matthias
2dcb4134cc Merge branch 'develop' into pr/iuvbio/1563 2019-02-21 06:29:37 +01:00
iuvbio
b5758e67f9 order creation cleanup 2019-02-21 00:29:59 +01:00
hroff-1902
2851833726 added _now_is_time_to_refresh() 2019-02-21 01:20:24 +03:00
hroff-1902
c1ef6940b0 removed wrong comment: tuple is not created here 2019-02-21 00:47:18 +03:00
hroff-1902
2aba9c081c fixed typos in comments 2019-02-21 00:46:35 +03:00
iuvbio
e495ffec78 align dry_run_orders 2019-02-20 02:38:16 +01:00
iuvbio
4241caef95 changes to base and subclass 2019-02-17 23:34:15 +01:00
iuvbio
d8feceebb5 fix type-hints 2019-02-17 15:54:22 +01:00
iuvbio
5e8a7a03c3 correct time_in_force param 2019-02-17 15:26:33 +01:00
iuvbio
32b02c9925 kraken subclass 2019-02-17 04:01:17 +01:00
iuvbio
54d5bce445 undo kraken specific changes 2019-02-17 03:59:40 +01:00
Crypto God
ef5a0b9afc add Kraken specifics 2019-02-15 22:50:11 +01:00
Samuel Husso
e3ae8d3f69 flake8 3.7.1 fixes 2019-01-31 07:51:03 +02:00
Matthias
86a0863e30 Clarify logmessage Done fetching 2019-01-22 19:26:07 +01:00
Matthias
c77607b997 Fix tests after rebase 2019-01-22 07:38:15 +01:00
Matthias
3221f883d3 Wrap line correctly 2019-01-22 07:07:15 +01:00
Matthias
27b2021726 Only run once per pair 2019-01-22 07:07:15 +01:00
Matthias
d7df5d5715 Keep last_pair_refresh as tuple asw ell 2019-01-22 07:07:15 +01:00
Matthias
f0af4601f9 Adopt plot_dataframe to work with --live 2019-01-22 07:07:15 +01:00
Matthias
0aa0b1d4fe Store tickers by pair / ticker_interval 2019-01-22 07:07:15 +01:00
Matthias
5f61da30ed Adjust tests to 3tuple return value from async method 2019-01-22 07:06:30 +01:00
Matthias
d6df3e55c0 Return ticker_interval from async routine
used to identify calls in refresh_latest_ohlcv
2019-01-22 07:06:30 +01:00
Matthias
e503d811bd Change logmessages to match functions called 2019-01-22 07:05:09 +01:00
Matthias
a206777fe5 Rename refresh_tickers to refresh_latest_ohlcv 2019-01-22 07:05:09 +01:00
Matthias
06ec106079 simplify refresh_tickers 2019-01-22 07:04:19 +01:00
Matthias
646e98da55 Always return dataframe 2019-01-22 07:04:19 +01:00
Matthias
b48430f922 Return list not None 2019-01-19 20:21:33 +01:00
Matthias
30e3b52b1e catch errors found in #1491 2019-01-19 20:02:37 +01:00
misagh
5e2e96acd2 compatibility with edge added 2019-01-16 18:38:20 +01:00
misagh
50bc20134f adding whitespace 2019-01-16 15:17:28 +01:00
misagh
baa5cc5b9e logs enriched 2019-01-16 15:10:31 +01:00
Matthias
fae875f588 Implement missing_data_fillup to tests and operations 2018-12-31 19:15:49 +01:00
misagh
34e3af6ad4 do not copy DF if copy is false 2018-12-21 10:35:17 +01:00
misagh
a13b30b2de removing test 2018-12-21 10:21:31 +01:00
misagh
a45ec1ed1c adding copy as a parameter to klines 2018-12-21 10:20:01 +01:00
misagh
215ded2e0a returning last candle close price for a pair 2018-12-17 21:30:58 +01:00
Misagh
1dbcab0b09
Merge pull request #1413 from freqtrade/feat/data_helpers
Feat/data helpers
2018-12-17 09:14:10 +01:00
Matthias
b3bb98777b
Merge branch 'develop' into time_in_force 2018-12-17 06:37:46 +01:00
Matthias
b38195e9b3 Rename to converter 2018-12-14 06:32:49 +01:00
Matthias
030ecbfc17 move exchange_helpers to data module 2018-12-14 06:32:49 +01:00
Matthias
7a533de1a8 Use list ticker history for backtesting 2018-12-12 19:17:09 +01:00
Matthias
627ab9f583 pass around dataframe instead of list 2018-12-12 19:17:09 +01:00
Matthias
8c1901ad1e Extract caching logic from lowestlevel fetch_ohlcv function 2018-12-11 07:14:39 +01:00
Matthias
e2bff9d5cb Remove assigning klines from download method 2018-12-10 20:22:21 +01:00
Matthias
36de451809 Remove class-level variables 2018-12-10 19:55:21 +01:00
misagh
663e33d2ef if condition refactored 2018-12-09 16:06:00 +01:00
misagh
2f5c8941eb removing unnecessary default value 2018-12-09 16:00:04 +01:00
misagh
d12cc39a5e some visual happyness 2018-12-04 20:59:55 +01:00
misagh
b7aa77acdd conflict resolved 2018-12-04 20:28:07 +01:00
misagh
9d005678c3 Merge branch 'develop' into stoploss_on_exchange 2018-11-30 15:13:43 +01:00
Matthias
38592c6fa6 Add binance config sample, improve invalid pair message 2018-11-29 07:07:47 +01:00
misagh
1a5465fb50 logs enriched in case of stop loss on exchange, test fixed 2018-11-28 19:35:10 +01:00
misagh
7dbf0fed68 stop loss limit order type corrected 2018-11-27 17:09:51 +01:00
misagh
3131788639 Merge branch 'develop' into time_in_force 2018-11-26 19:20:01 +01:00
misagh
86354ed258 conflict resolved 2018-11-26 19:08:58 +01:00
misagh
b63535083e flake8 2018-11-26 18:47:32 +01:00
misagh
1f1770ad5a migration script and and error handling on stop loss order 2018-11-26 18:46:59 +01:00
misagh
29c23e3136 added time in force in buy and sell functions 2018-11-25 21:38:11 +01:00
misagh
181424e8ea time in force validator added 2018-11-25 21:09:35 +01:00
misagh
5e1fb11124 documentation added for stop loss on exchange 2018-11-25 17:30:06 +01:00
misagh
3e29fbb17a stoploss on exchange added as a parameter to order_types 2018-11-25 17:22:56 +01:00
Matthias
ebaf58b0fe Only sort data if necessary 2018-11-25 15:00:50 +01:00
Matthias
8a43611992 Remove get_candle_history (it's now async)
convert sort-test to async
2018-11-25 14:48:15 +01:00
Matthias
745a517795 Fix comment pointing to wrong column 2018-11-25 14:40:21 +01:00
misagh
664b96173e removing NotImplementedError from stoploss_limit 2018-11-25 10:54:36 +01:00
misagh
b2c0b20a58 added real tests for stop on exchange in dry-run 2018-11-24 18:26:04 +01:00
misagh
07ac902451 test exchange added 2018-11-22 20:30:31 +01:00
misagh
3418592908 freqtradebot test added for orders on exchange 2018-11-22 19:25:26 +01:00
misagh
bbe8e4e494 flake8 2018-11-22 17:07:37 +01:00
misagh
bfbdddff26 stoploss limit order added to exchange 2018-11-22 16:24:40 +01:00
Matthias
b3e08831f7 Remove rate for market orders 2018-11-17 20:14:50 +01:00
Matthias
c11984d943 Check if exchange supports all configured market types 2018-11-17 19:54:55 +01:00
Matthias
ef1e20bfe8 Don't add default value for ordertype
sort parameters to align with ccxt
2018-11-17 13:29:24 +01:00
Matthias
6a71f80a9e Add support for different order types 2018-11-15 06:58:24 +01:00
Matthias
a4d2bb6f29 Fix "No market symbol" exception in telegram calls 2018-10-10 21:28:48 +02:00
Matthias
e7d5cf9d9d Allow loading of any additional configuration to ccxt
seperated by async and non-async
2018-10-04 20:16:43 +02:00
Matthias
3893b638fe
Merge pull request #1213 from freqtrade/fix_mac_install
Fix mac install documentation
2018-09-27 12:39:42 +02:00
Matthias
9685c09c1a Add offset to "get_trades_for_order" 2018-09-15 20:28:36 +02:00
Matthias
14b7fc42fa Change returntype for _load_markets to dict 2018-09-11 19:46:31 +02:00
Matthias
0a29096794 Refactor load_market out of validate_pairs 2018-09-10 20:19:12 +02:00
Matthias
e9deb928f6 Fix bug when exchange result is empty 2018-09-02 19:15:23 +02:00
Matthias
ffd4469c1d fix typo, refresh_tickers does not need a return value 2018-08-29 19:56:38 +02:00
Matthias
54ddd908e6 Merge branch 'develop' into ccxt-async 2018-08-29 19:43:09 +02:00
Matthias
9f8e68ce02 Merge branch 'develop' into order-book 2018-08-29 19:32:44 +02:00
Samuel Husso
36e0e652f0
Merge pull request #1135 from freqtrade/fix/rpc_balance_vtho
Fix /balance rpc call if coin is not properly listed
2018-08-22 07:01:40 +03:00
Misagh
66d52c1236
Merge pull request #4 from xmatthias/ccxt_async_retrier
Add async retrier
2018-08-21 19:55:30 +02:00
Matthias
6e90d482ef remove amount_to_lots (deprecated / removed)
was removed from ccxt in
527f082e59
2018-08-21 19:08:21 +02:00
Matthias
694b8be32f Move variables from class to instance 2018-08-19 19:49:02 +02:00
Matthias
d722c12109 fix bug in async download script 2018-08-18 21:08:59 +02:00
Matthias
d556f669b0 Add async retrier 2018-08-18 21:05:38 +02:00
Matthias
ff8ed564f1 Refactor refresh_pairs to exchange and fix tests 2018-08-16 12:15:09 +02:00
misagh
e6e2799f03 Keeping cached Klines only in exchange and renaming _cached_klines to
klines.
2018-08-16 11:37:31 +02:00
misagh
a2d9126917 Merge branch 'develop' into ccxt-async 2018-08-15 15:09:35 +02:00
Matthias
baeffee80d Replace time.time with arrow.utcnow().timestamp
arrow is imported already
2018-08-15 13:26:01 +02:00
Matthias
ca6594cd24 remove comment, add docstring 2018-08-15 12:49:39 +02:00
Nullart2
2bc7a668a3 informative startup 2018-08-15 10:39:32 +08:00
Matthias
37e504610a refactor private method - improve some async tests 2018-08-14 20:33:03 +02:00
Matthias
8528143ffa Properly close async exchange as requested by ccxt 2018-08-14 19:52:09 +02:00
Matthias
88e85e8d33 fix tests - move load_async_markets call to validate_pairs 2018-08-10 13:11:04 +02:00
Matthias
fce071843d Move async-load to seperate function 2018-08-10 13:04:43 +02:00
Matthias
a852d2ff32 default since_ms to 30 days if no timerange is given 2018-08-10 11:15:02 +02:00
Matthias
a107c4c7b4 Download using asyncio 2018-08-10 11:08:28 +02:00
Matthias
74d6816a1a Fix some comments 2018-08-10 11:00:07 +02:00
Matthias
e34f2abc3a Add some typehints 2018-08-10 09:58:04 +02:00
Matthias
8a0fc888d6 log if using cached data 2018-08-10 09:48:54 +02:00
Matthias
36f05af79a sort fetch_olvhc result, refactor some
* add exception for since_ms - if this is set it should always download
2018-08-10 09:44:15 +02:00
misagh
cb26085229 Moving should_not_update logic to async function per pair. if there is
no new candle, async function will just return the last cached candle
locally and doesn’t hit the API
2018-08-09 12:47:26 +02:00
misagh
cef09f49a6 wait for markets to be loaded before looping in symbols. 2018-08-09 11:51:38 +02:00
Matthias
e1921c8849 Fix bug causing /balance to fail 2018-08-08 22:00:39 +02:00
Nullart2
c9c0e108ab refactor 2018-08-07 18:29:37 +08:00
Nullart2
26d591ea43 mypy fix 2018-08-05 21:08:07 +08:00
Nullart2
4a9bf78770 Order Book with tests 2018-08-05 12:41:06 +08:00
misagh
af93b18475 Do not refresh candles on "process_throttle_secs" but on intervals 2018-08-03 18:10:03 +02:00
misagh
2ec2f1abce async branch updated to reflect develop branch changes 2018-08-02 16:48:21 +02:00
Janne Sinivirta
17d78b7807
Merge pull request #1115 from creslinux/candlesnottickers
renamed/refactored get_ticker_history to get_candle_history to stop confusion
2018-08-02 12:33:09 +03:00
creslin
a741f1144a missing __init__.py 2018-08-02 08:58:04 +00:00
Matthias
915160f21f Add tests for tickers-history 2018-08-01 21:44:02 +02:00
Matthias
136442245c Add todo's and dockstring 2018-07-31 21:02:04 +02:00
Matthias
31870abd25 Refactor async-refresh to it's own function 2018-07-31 20:43:32 +02:00
misagh
74fa4ddca4 CCXT rate limit config default to => true
+ adding config to config_full.json.example
2018-07-31 16:54:02 +02:00
misagh
be1298dbd2 Initializing CCXT with rate_limit parameter optional (default to false) 2018-07-31 14:19:16 +02:00
misagh
154e4569d7 Merge branch 'develop' into ccxt-async 2018-07-31 12:48:12 +02:00
misagh
c8f125dbb9 ccxt async POC 2018-07-31 12:47:32 +02:00
Matthias
5a55cd25ff
Merge branch 'develop' into sandbox2 2018-07-30 20:18:48 +02:00
creslinux
012fe94333 Recommitted as new branch with unit tests - GIT screwd me on the last PR 2018-07-30 16:49:58 +00:00
creslinux
dd71071740 Added logger.info when Sandbox is enabled. 2018-07-29 09:15:13 +00:00
creslinux
1e804c0df5 flake 8 2018-07-29 08:10:55 +00:00
creslinux
0a059662b3 Submitting with unit test for the working scenario.
Strongly recommend core team check the unit test is even targetting the
correct code in exchange/__init__.py

I have a real knowledge gap on mocker, in so far as how tests map to
what they're targeting.
2018-07-28 20:32:10 +00:00
creslinux
7efa81073a Removed ; at line end. 2018-07-27 09:10:09 +00:00
creslinux
d23b3ccc5e odd cut and paste error fixed. 2018-07-27 08:55:36 +00:00
Matthias
64f933477d
Merge pull request #1007 from freqtrade/remove-analyze
Remove Analyze
2018-07-19 10:12:36 +02:00
Janne Sinivirta
85fd4dd3ff rename analyze.py to exchange_helpers.py 2018-07-17 21:26:52 +03:00
Matthias
85c60519b0 Fix test crash 2018-07-09 22:11:12 +02:00
creslinux
5ab644dea6 flake 8 fix 2018-07-05 12:05:31 +00:00
creslinux
966668f48a Handle if ticker_interval in config.json is not supported on exchange.
Returns.

Tested positive and negative data.
The ticker list in constants.py may be obsolete now, im not sure.

 raise OperationalException(f'Invalid ticker {timeframe}, this Exchange supports {timeframes}')
freqtrade.OperationalException: Invalid ticker 14m, this Exchange supports {'1m': '1m', '3m': '3m', '5m': '5m', '15m': '15m', '30m': '30m', '1h': '1h', '2h': '2h', '4h': '4h', '6h': '6h', '8h': '8h', '12h': '12h', '1d': '1d', '3d': '3d', '1w': '1w', '1M': '1M'}
2018-07-05 11:57:59 +00:00
xmatthias
f7b46d5404 update docstring 2018-06-18 22:34:28 +02:00
xmatthias
896afe7118 convert get_name and get_id to properties 2018-06-18 22:20:50 +02:00
xmatthias
ef53134499 lowercase variables 2018-06-18 22:09:46 +02:00
xmatthias
c31519fdb2 lowercase _api object 2018-06-18 22:07:15 +02:00
xmatthias
dea26fadfe move init_ccxt to class 2018-06-17 23:38:07 +02:00
xmatthias
21edcbdc27 Refactor exchange to class 2018-06-17 23:38:07 +02:00
Samuel Husso
18e3090379 Exchange: f-strings into use 2018-06-09 08:27:39 +03:00
gcarq
a2a1a517da fix flake8 warning 2018-06-08 02:01:18 +02:00
xmatthias
4a17671f45 improve log message 2018-06-06 20:30:42 +02:00
xmatthias
a901f21bcd test ticker caching 2018-06-06 20:24:47 +02:00
xmatthias
e690003621 reinstate caching for get_ticker 2018-06-06 20:18:16 +02:00
Janne Sinivirta
20815771ab
Merge pull request #817 from gcarq/feature/gdax
Enable Backtesting with GDAX and allow trading with EUR/USD
2018-06-03 17:49:20 +03:00
Gerald Lonlas
c9e49ed7b4 Sort ticker_history
CCXT does not sort the ticker history from exchanges.
Bittrex and Binance are sorted ASC (oldest first, newest last) when
GDAX is sorted DESC (newest first, oldest last).

Because of that the get_ticker_history() fall in a very long loop
when the tickers are sorted DESC. Means it downloads more than
needed.

This commit enable exhanges like GDAX and unify the ticker_history
list across all exchanges.
2018-06-03 00:13:48 -07:00
xmatthias
3fb1dd02f1 add typehints and type: ignores 2018-05-31 22:00:46 +02:00
Matthias Voppichler
8b098859f4 Reduce verbosity of get_ticker_history 2018-05-12 20:15:59 +02:00
Anton
2bfce64e6a Fix conflicts 2018-05-04 13:38:51 +03:00
Anton
ceeb98dda9 Fix conflicts 2018-05-03 11:16:29 +03:00
Michael Egger
90a107393a
Merge pull request #622 from gcarq/fix/dl-testdata
fix download testdata
2018-05-02 22:06:43 +02:00
gcarq
a76ed88496 Merge branch 'feat/objectify-ccxt' into feature/catch-exchange-errors 2018-05-02 20:03:13 +02:00
Anton
24ab1b5be5 Fix review comments, documenation update 2018-05-01 00:27:05 +03:00
Samuel Husso
842b0c2270 Exchange: fix missing comma and typehinting per PR comments 2018-04-29 18:55:43 +03:00
Anton
82ea56c8fd Fix review comments. Add support of datetime timeganges 2018-04-28 00:16:34 +03:00
Matthias Voppichler
483415cd65 Add fee entry to DRY_ORDER dict as defined by ccxt 2018-04-25 09:03:32 +02:00
Anton
6675120324 Add time range support to download_backtest_data 2018-04-25 02:11:07 +03:00
Matthias Voppichler
9e94778fd7 simplify check for presence of list 2018-04-24 19:42:41 +02:00
gcarq
aa213a3640 cancel_order: handle InvalidOrder exception 2018-04-23 16:58:32 +02:00
gcarq
baeeaa777d get_balance: handle case if currency is not in response 2018-04-23 16:57:18 +02:00
gcarq
20af4bae7c retrier: raise initial exception instead of OperationalException 2018-04-23 16:56:35 +02:00
gcarq
bc2bd7fe1e add retrier decorator to all exchange functions except buy/sell 2018-04-22 17:28:49 +02:00
Samuel Husso
de8db9293c exchange: extract ccxt init to its own function (so that we can init ccxt from the scripts) 2018-04-22 10:57:48 +03:00
gcarq
bbe3bc4423 catch ccxt.ExchangeError and retry 2018-04-22 00:20:15 +02:00
Matthias Voppichler
a140748b5a Merge branch 'feat/objectify-ccxt' into cxxt_obj_sellfix 2018-04-21 22:39:22 +02:00
gcarq
3997b6038d let cctx handle rate limits 2018-04-21 19:11:29 +02:00
Matthias Voppichler
c7d1a767f7 add get_trades_for_order 2018-04-21 13:33:29 +02:00
enenn
94287d66a8 Flake8 fixes 2018-04-12 18:16:27 +02:00
enenn
6115fb08c0 Remove get_fee_maker/taker and add argument to get_fee instead 2018-04-12 18:16:25 +02:00
enenn
cba8745164 Update exchange validate_pairs and related tests 2018-04-12 18:16:19 +02:00
enenn
0c8ecf2b1f Add 'get_tickers' function to exchange and use it for dynamic whitelists 2018-04-12 18:07:44 +02:00
enenn
5fc8250ee4 Add 'exchange_has' function to check if exchange supports specific API call
Catch ccxt.NotSupported exception instead of checking beforehand
2018-04-12 18:07:44 +02:00
enenn
1f75636e56 [1/3] Add support for multiple exchanges with ccxt (objectified version) (#585)
* remove obsolete helper functions and make _state a public member.

* remove function assertions

* revert worker() changes

* Update pytest from 3.4.2 to 3.5.0

* Adapt exchange functions to ccxt API
Remove get_market_summaries and get_wallet_health, add exception handling

* Add NetworkException

* Change pair format in constants.py

* Add tests for exchange functions that comply with ccxt

* Remove bittrex tests

* Remove Bittrex and Interface classes

* Add retrier decorator

* Remove cache from get_ticker

* Remove unused and duplicate imports

* Add keyword arguments for get_fee

* Implement 'get_pair_detail_url'

* Change get_ticker_history format to ccxt format

* Fix exchange urls dict, don't need to initialize exchanges

* Add "Using Exchange ..." logging line
2018-04-06 10:57:08 +03:00
Gerald Lonlas
7cafd1f17e Update exchange unit tests 2018-03-30 13:52:25 -07:00
Gerald Lonlas
052404ffbd Check if the exchange is supported 2018-03-30 13:14:35 -07:00
Gerald Lonlas
96b2210c0f Change deprecated logger.warn by warning 2018-03-30 12:11:06 -07:00
Samuel Husso
1b4c1980c2 exchange: capitalize class name 2018-03-26 09:23:42 +03:00