Commit Graph

2480 Commits

Author SHA1 Message Date
iuvbio fe792882b5 load generic class if no subclass exists 2019-02-17 14:42:55 +01:00
iuvbio d3ead2cd09 exchange import is not needed anymore 2019-02-17 04:25:39 +01:00
iuvbio c879591f45 add exchange_resolver to resolver init 2019-02-17 04:22:24 +01:00
iuvbio c315f63e4b use exchange_resolver in freqbot 2019-02-17 04:18:56 +01:00
iuvbio 2fb36b116d change variable names 2019-02-17 04:15:11 +01:00
iuvbio ca388a9acf create exchange_resolver 2019-02-17 04:01:43 +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
iuvbio b7afcf3416 add VolumePrecisionPairList 2019-02-16 22:56:04 +01:00
hroff-1902 ea6d4a9d36
fetch amount_reserve_percent from config 2019-02-16 19:50:55 +03:00
Matthias e0c420b93f
Merge pull request #1550 from hroff-1902/patch-2
execute_buy, handle_trade: do not use ticker if use_order_book:true is set in config
2019-02-16 13:55:33 +01:00
iuvbio 8ed3658447 Merge branch 'develop' into kraken_support 2019-02-15 23:27:41 +01:00
Crypto God 3aa614b983 bump version 2019-02-15 22:51:09 +01:00
Crypto God 3953092edd output error message 2019-02-15 22:50:31 +01:00
Crypto God ef5a0b9afc add Kraken specifics 2019-02-15 22:50:11 +01:00
Matthias 98bd713624 iUpdate orderbook_bid_test 2019-02-14 19:15:16 +01:00
Matthias f852be1a9b Fix tests for get_ticker fix 2019-02-14 07:27:13 +01:00
hroff-1902 b87e15774b
test adjusted 2019-02-13 13:02:57 +03:00
hroff-1902 8e7e670003
Orthography in the log message 2019-02-13 12:42:39 +03:00
hroff-1902 8fc8c985d8
logs: cosmetic changes
"30 seconds" was errorneously hardcoded in the text of the log message, while actually it's RETRY_TIMEOUT which may differ
2019-02-13 12:38:44 +03:00
hroff-1902 69a24c1272
no need for test_ticker parameter just for making current tests happy, tests should be reimplemented 2019-02-13 12:23:22 +03:00
hroff-1902 e8daadfb7e
same approach for the sell side (at handle_trade) 2019-02-13 03:54:57 +03:00
hroff-1902 91629807f7
shame on me 2019-02-13 03:17:54 +03:00
hroff-1902 f551fb5ff7
adjusted for passing tests
Don't like this test_ticker parameter, but it's needed for tests to pass prepared ticker.
Any ideas?
2019-02-13 03:14:24 +03:00
hroff-1902 e8ef36fb6e
execute_buy: do not use ticker if use_order_book:true is set in config
This PR corresponds to:
https://github.com/freqtrade/freqtrade/issues/1377#issue-386200394
in understanfing that pair Ticker is mostly statistics, but on the other side, create_trade/execute_buy.

It resolves problem with some exchanges (BitMex) where ticker structure returned by ccxt does not contain bid and ask values.

1. On exchanges like Bitmex, set use_order_book: true for buys. FT won't request ticker and will use data from order book only.
2. On exchanges where order book is not available, set use_order_book: false, ticker data (including ask/last balance logic) will be used.
3. On other exchanges, either approach may be used in the config.

Performance: current implementation fetches ticker every time even if order book data will be later used. With this change it's eliminated.

Comparison of order book rate and ticker rate is removed (in order to split fetching order book and ticker completely in execute_buy), so some tests that touch this code may require adjustments.
2019-02-13 02:55:55 +03:00
Matthias d91dbf4090
Merge pull request #1545 from hroff-1902/patch-3
Cosmetic: fix logging
2019-02-11 06:12:17 +01:00
hroff-1902 69f69d965c
test asserts aligned accordingly to new log messages 2019-02-10 23:37:24 +03:00
hroff-1902 5e741a0f73
fixed flake 2019-02-10 22:28:40 +03:00
hroff-1902 d6c0c107ac
fixed flake
hmm, even in the comments?
2019-02-10 22:23:00 +03:00
hroff-1902 7ed15c64ba
what else? 2019-02-10 22:13:40 +03:00
hroff-1902 08d35f3e15
fix checks
Should not make cosmetic changes right in the github editor without local smoketests...
2019-02-10 22:09:11 +03:00
hroff-1902 4dffb17dd6
fix flake 2019-02-10 22:01:46 +03:00
hroff-1902 14d6cdf9b2
OHLCV should be float for TA-LIB indicators in the strategy
Some exchanges (BitMEX) return integer values for Volume field. And sometimes even for OHLC -- same, on BitMEX, since price decrease is 0.5. TA-LIB functions assume floats and fail with exception.
Of course, this can be fixed (converted) in ccxt for particular exchange, but TA-LIB will still fail for exchanges for that such a conversion is not implemented in ccxt code. So let's make perform this conversion here in order to be sure our strategy will not crash on a new exchange.
2019-02-10 21:52:33 +03:00
hroff-1902 b91981f0aa
Cosmetic: fix logging
Output stake_amount as it is defined in the config (it may by int) instead of float. In order to avoid unnecessary questions where and why it was converted to float and changed in the last digit while it should be integer for the exchange...

Other small cosmetic improvements to logging in freqtradebot.py
2019-02-10 21:31:13 +03:00
hroff-1902 585f525879
Cosmetic: fix logging 2019-02-10 21:02:53 +03:00
Matthias 0a71ebce68 Remove unneeded pair conversation, add docstring 2019-02-04 06:13:22 +01:00
Matthias 1d940041e3 Add log test for cancelled order 2019-02-03 13:52:05 +01:00
Matthias 40fea4593f Add log_has_re 2019-02-03 13:52:05 +01:00
Matthias 02c3552954 Adjust comment 2019-02-03 13:52:05 +01:00
Matthias 91ed02134e Add tests for cancelled on exchnage 2019-02-03 13:52:05 +01:00
Matthias e8ed8a2ea7 Handle orders cancelled on exchange
fix #1527
2019-02-03 13:51:52 +01:00
Samuel Husso e3ae8d3f69 flake8 3.7.1 fixes 2019-01-31 07:51:03 +02:00
Matthias 2b71e8de5c
Merge pull request #1525 from mishaker/edge_messages
Edge messages enriched
2019-01-30 11:41:32 +01:00
misagh 84b6b8fe97 edge messages enriched 2019-01-30 11:23:23 +01:00
Misagh 421be5da86
Merge pull request #1511 from freqtrade/fix/more_settings_strategy
add more settings to strategy
2019-01-30 11:22:10 +01:00
Misagh 22e82f5e47
Merge pull request #1507 from xmatthias/feat/dataprovider
Data Provider
2019-01-27 12:32:18 +01:00
Matthias 38f73dafb3 Fix indexing error 2019-01-27 10:47:24 +01:00
Matthias e0ad095bc7 Simplify conversation to python dates (pandas offers this "for free" 2019-01-27 10:47:02 +01:00
Matthias 1d08ada939 Fix backtest-test with timestamp-conversion 2019-01-27 10:40:52 +01:00
Matthias 3446dd1792 Add test informative_pairs_added 2019-01-26 20:05:49 +01:00
Matthias 02d13645b0 Merge branch 'develop' into feat/dataprovider 2019-01-26 19:29:41 +01:00
Matthias ba07348b82 Rename additional_pairs to informative_pairs 2019-01-26 19:22:45 +01:00
Matthias bfd8609352 Fix comment 2019-01-26 19:16:33 +01:00
Matthias da5210ef5b
Merge branch 'develop' into feature/plot_df_refactoring_multiple_pairs 2019-01-26 11:04:35 +01:00
AxelCh eec7276393 fix crash when backtest-result.json not exist 2019-01-26 11:00:04 +01:00
Matthias 3c316fe3e4 Fix alignment 2019-01-25 19:14:38 +01:00
Matthias 3afe54790e
Merge pull request #1510 from gianlup/add_totprofit_to_bt
Added total profit column to backtest result
2019-01-25 06:38:39 +01:00
Matthias 74b03d0529 Add tests and default values for all experimental features 2019-01-24 07:03:41 +01:00
Matthias d136cac181 Merge branch 'develop' into feat/dataprovider 2019-01-23 21:01:19 +01:00
Matthias 97f6a45819 Allow more settings to come from strategy 2019-01-23 20:59:41 +01:00
Matthias 5ea332e9be fix bug with trailing_stop_offset if it's disabled 2019-01-23 20:57:31 +01:00
Gianluca Puglia 896c9d34fd Added total profit column do backtest result 2019-01-22 22:41:53 +01:00
Matthias 13e2f71d30 Add flake8 plugins and implement small improvements 2019-01-22 20:01:12 +01:00
Matthias 86a0863e30 Clarify logmessage Done fetching 2019-01-22 19:26:07 +01:00
Matthias a06593e6e9 Fix test 2019-01-22 19:17:21 +01:00
Matthias 89ddfe08f4 Add additional-pairs (sample) to defaultstrategy 2019-01-22 19:17:08 +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 1e7431a7b8 Blackify 2019-01-22 07:07:15 +01:00
Matthias e66808bb02 Add additional pairs to refresh call 2019-01-22 07:07:15 +01:00
Matthias 6e2de75bcb Add additional_pairs to strategy 2019-01-22 07:07:15 +01:00
Matthias d6cdfc58af Fix mypy hickup after changing list to tuples 2019-01-22 07:07:15 +01:00
Matthias 27b2021726 Only run once per pair 2019-01-22 07:07:15 +01:00
Matthias e7800aa88a Import only what's necessary 2019-01-22 07:07:15 +01:00
Matthias a2bc1da669 Remove private var from class instance
it's overwritten in __init__ anyway
2019-01-22 07:07:15 +01:00
Matthias 1e749a0f9b Rename variable to be clearer 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 6525a838d1 Adjust documentation to tuple use 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 a9abc25785 Improve data-provider tests 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 b981cfcaa0 remove comment which proves untrue now 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 2b029b2a86 Only return ohlcv if available (Live and dry modes) 2019-01-22 07:04:19 +01:00
Matthias 35c8d1dcbe Update comment 2019-01-22 07:04:19 +01:00
Matthias 8f3ea3608a some cleanup 2019-01-22 07:04:19 +01:00
Matthias 5ecdecd1eb remove unused local variable persistance 2019-01-22 07:04:19 +01:00
Matthias 58f1abf287 Add dp / wallets to strategy interface 2019-01-22 07:04:19 +01:00
Matthias d3a37db79a Provide available pairs 2019-01-22 07:04:19 +01:00
Matthias f034235af4 Tests for RunMode 2019-01-22 07:04:19 +01:00
Matthias 1340b71633 Add RunMode setting to determine bot state 2019-01-22 07:04:19 +01:00
Matthias fed3ebfb46 Change enum from 0 to 1 according to the documentation
see [here](https://docs.python.org/3/library/enum.html#functional-api)
2019-01-22 07:04:19 +01:00
Matthias a7db4d74cb Add some simple dataprovider tests 2019-01-22 07:04:19 +01:00
Matthias 84cc4887ce Add copy parameter 2019-01-22 07:04:19 +01:00
Matthias e38c06afe9 Small fixes 2019-01-22 07:04:19 +01:00
Matthias f1a5a8e20e provide history 2019-01-22 07:04:19 +01:00
Matthias 4ab7edd3d6 small adaptations 2019-01-22 07:04:19 +01:00
Matthias 05570732c6 add get_runmode 2019-01-22 07:04:19 +01:00
Matthias 7206287b00 Use Dataprovider 2019-01-22 07:04:19 +01:00
Matthias b119a767de Some more restructuring 2019-01-22 07:04:19 +01:00
Matthias a6d74a1463 Draft of dataprovider 2019-01-22 07:04:19 +01:00
Misagh 34b617065d
Merge pull request #1500 from freqtrade/fix/1491_typeerror
Fix typeerror when fetching candles
2019-01-20 16:13:02 +01:00
Matthias b48430f922 Return list not None 2019-01-19 20:21:33 +01:00
Matthias 4e760e1a5e Test for errors found in 1491
fixes #1491
2019-01-19 20:03:04 +01:00
Matthias 30e3b52b1e catch errors found in #1491 2019-01-19 20:02:37 +01:00
Axel CHERUBIN 797ac71376
fix stoploss_on_exchange_interval type
from boolean to number
2019-01-19 13:26:30 -04:00
Matthias c2578c7321
Merge pull request #1474 from mishaker/tsl_on_exchange
Making trailing stoploss compatible with stoploss on exchange
2019-01-18 19:29:39 +01:00
misagh 87329a393c adding stop loss last update to test persistence 2019-01-18 12:14:00 +01:00
misagh a2618208ef wrapping in parantheses instead of line breaks 2019-01-18 12:07:51 +01:00
misagh 70780bb01e using dict.get to fetch interval 2019-01-18 12:02:29 +01:00
Matthias a2c01916e1 Add type-ignores to floatfmt
tabulate supports this:
30554300d7/tabulate.py?at=master&fileviewer=file-view-default#tabulate.py-1291:1294
2019-01-17 20:28:21 +01:00
misagh 75cedfafb8 unreachable code removed 2019-01-16 20:03:34 +01:00
misagh da51ef40f8 SL interval added to CONF_SCHEMA 2019-01-16 19:04:43 +01:00
misagh 5e2e96acd2 compatibility with edge added 2019-01-16 18:38:20 +01:00
misagh 611b48dbb9 fix return value from info hash: value is in string 2019-01-16 16:15:36 +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
misagh aa03a864f7 comments added for TSL on exchange function 2019-01-16 15:00:35 +01:00
misagh a44f781284 Merge branch 'develop' into tsl_on_exchange 2019-01-16 14:56:27 +01:00
misagh cffc9ce890 last step: stop loss on exchange added to trailing 2019-01-16 14:49:47 +01:00
misagh 6d588b3b0b trailing stop loss on exchange extracted to a separate function 2019-01-16 14:28:52 +01:00
misagh bfb7121583 refactoring handle_stoploss_on_exchange 2019-01-16 12:16:32 +01:00
misagh e31fa8721f Merge branch 'develop' into tsl_on_exchange 2019-01-16 11:52:23 +01:00
misagh 29439c05d6 adding update beat test 2019-01-16 11:51:54 +01:00
misagh 1cd5abde37 removing unnecessary guard 2019-01-16 11:22:25 +01:00
misagh 12e8108015 checking params of cancel order and stop loss order 2019-01-15 15:36:41 +01:00
misagh f0cfab7940 flaking 8 2019-01-15 11:10:28 +01:00
misagh cfe00c2f0c initial test added for TSL on exchange 2019-01-15 11:04:32 +01:00
Matthias cd2bccd441 Have backtest use the same logic to get the ROI entry 2019-01-12 13:45:43 +01:00
Matthias e9d61eb35d Fix ROI calculation problem
Prior to that all ROI entries with a key > trade_duration where active.
This causes a problem if the ROI is not linearly declining
2019-01-12 13:45:03 +01:00
Matthias 9e0902e72f Add test for case for odd ROI dict - #1478 2019-01-12 13:38:49 +01:00
misagh e025ad3918 temp test commit 2019-01-09 16:23:13 +01:00
Matthias 99e2d795c5
Merge pull request #1475 from freqtrade/feat/hyperopt_sell
Feat/hyperopt sell
2019-01-08 21:19:53 +01:00
misagh 1a27258469 condition fixed 2019-01-08 16:34:23 +01:00
misagh 9e133eb32e adding guard not to cancel the previous stop loss on exchange if market
is falling quickly
2019-01-08 16:31:02 +01:00
misagh f4ceeca438 Merge branch 'develop' into tsl_on_exchange 2019-01-08 15:33:32 +01:00
misagh aed855284c comparing with stopPrice instead of price 2019-01-08 13:44:51 +01:00
misagh 4fbb9d4462 adding stoploss_on_exchange_interval to order_types dict. default to 1
minute (60)
2019-01-08 12:39:53 +01:00
misagh 16472535eb adding stoploss_last_update to persistence 2019-01-08 12:39:10 +01:00
Matthias f620449bec Add test for hyperoptresolver 2019-01-06 19:38:32 +01:00
Matthias 440a7ec9c2 fix pytest 2019-01-06 19:31:25 +01:00
Matthias 40b1d8f067 Fix CI problems 2019-01-06 14:57:14 +01:00
Matthias dd2af86a41 pprint results 2019-01-06 14:47:38 +01:00
misagh 821e299afb adjusting trailing stoploss on exchange 2019-01-06 14:45:29 +01:00
Matthias 167088827a include default buy/sell trends for the hyperopt strategy 2019-01-06 14:13:15 +01:00