Commit Graph

442 Commits

Author SHA1 Message Date
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