Commit Graph

964 Commits

Author SHA1 Message Date
creslin
ba31c809cb
avoid list index out of range in trim_tickerlist
trim_tickerlist is called from load_datafile. 
 trim_tickerlist will throw an index out of range error when parsing a json file for a timerange outside its contents.
This patch to load_datafile checks the timerange is in the file or not handles the exception as:
 - first time hit: 
---- Return None existing code will try to download file/timerange from exchange
 - second time hit: 
---- Log that the exchange does not have the timerange requested 
---- Bypass trim_tickerlist function to avoid triggering the index out of range function 

Here is an example of the error prior to path and after patching. 
This is from binannce using the pair "ZEN/BTC" and timerange "20180522-20180523"
"""
  File "/Users/creslin/PycharmProjects/freqtrade/freqtrade/optimize/__init__.py", line 107, in load_data
    pairdata = load_tickerdata_file(datadir, pair, ticker_interval, timerange=timerange)
  File "/Users/creslin/PycharmProjects/freqtrade/freqtrade/optimize/__init__.py", line 84, in load_tickerdata_file
    pairdata = trim_tickerlist(pairdata, timerange)
  File "/Users/creslin/PycharmProjects/freqtrade/freqtrade/optimize/__init__.py", line 36, in trim_tickerlist
while tickerlist[start_index][0] < start * 1000:
IndexError: list index out of range
""""

"""
2018-05-31 14:08:04,680 - freqtrade.optimize - INFO - Start timerange not in cached data
2018-05-31 14:08:04,680 - freqtrade.optimize - INFO - Download the pair: "ZEN/BTC", Interval: 5m
dumping json to "/Users/creslin/PycharmProjects/freqtrade/freqtrade/tests/testdata/ZEN_BTC-5m.json"
2018-05-31 14:08:08,225 - freqtrade.optimize - INFO - Start timerange unavailable from exchange
"""
2018-05-31 14:33:22 +03:00
creslin
491aaef73c
Update __init__.py 2018-05-31 12:14:19 +03:00
creslin
2600e189bd
Add USDT to the list of fiat currencies
USDT is common many exchanges and treated as a currency. 
It is helpful to allow USDT to be accepted as a fiat current when testing config.json
 
By way of example of a usecase
A strategy or otherwise report may not query:  config['stake_currency'] and currency = config['fiat_display_currency']
as the config.json with fail test, so cannot build  a base/pair such as BTC/USDT that is valid will not be built cleanly. 

Pulling BTC/USDT from config values can be useful to download query ticker file name and data, enumerating base/pair price to whitelist target pairs, performing correlation coefficient statistics etc.

As example: building a dataframe such as here 
           date       BTC/USDT      ETH/BTC          XLM/BTC        LTC/BTC
0    1517443200       10283.00       0.109475       0.000052       0.016031

The transposing to actual USDT ticker value row-wise per pair
               date  BTC/USDT   ETH/USD   XLM/USD     LTC/USD
1517443200  10283.00   1125.731425  0.535950  164.846773
2018-05-30 10:42:51 +03:00
peterkorodi
0c051b1b7a Make plot_dataframe able to show trades stored in database. (#692)
* Show trades stored in db on the graph
2018-05-19 09:14:42 +03:00
Matthias Voppichler
ef78f2f03a Add test for invalid order_fee dict 2018-05-15 20:13:43 +02:00
Matthias Voppichler
a1fa688da0 Add tests for the new scenario 2018-05-15 19:49:47 +02:00
Matthias Voppichler
263bf918b1 Fix bug pointed out in #679 2018-05-15 19:49:28 +02:00
Anton
d112d90e8e Make telegram message beautiful 2018-05-15 13:37:34 +03:00
Anton
f175f48418 Fix get balance functionality 2018-05-15 00:31:56 +03:00
Matthias Voppichler
8549201502 add test for new fiat_convert logic 2018-05-13 20:46:02 +02:00
Matthias Voppichler
b1c53ec656 refactor "patch_coinmarketcap" to conftest"
add patch_coinmarketcap to get_patched_freqtradebot
2018-05-13 20:04:40 +02:00
Matthias Voppichler
790f35a5c8 fix test which resets singleton without reinstating it 2018-05-13 20:03:54 +02:00
Matthias Voppichler
3246c60472 Fix coinmarketcap ticker 2018-05-13 20:00:38 +02:00
Matthias Voppichler
57fc9df5f3 Fix typo 2018-05-13 19:54:19 +02:00
Matthias Voppichler
144be37a9a Convert ID to string 2018-05-13 19:53:23 +02:00
Matthias Voppichler
9b8f90dc9f log error in find_price 2018-05-13 19:50:04 +02:00
Matthias Voppichler
d07491ceb2 Dynamically load cryptomap 2018-05-13 19:46:08 +02:00
Matthias Voppichler
8f17b11610 Fix testfluke in hyperopt 2018-05-13 13:38:29 +02:00
Matthias Voppichler
8b098859f4 Reduce verbosity of get_ticker_history 2018-05-12 20:15:59 +02:00
Michael Egger
5b25ed99ac
Merge pull request #652 from gcarq/feat/objectify-ccxt
CCXT into use
2018-05-12 14:04:06 +02:00
Michael Egger
edd840ac35
Merge pull request #640 from xmatthias/ccxt-obj-slippage
[cxxt][2/2] Add columns for slippage detection
2018-05-12 13:56:15 +02:00
Matthias Voppichler
58425993da Adapt tests to verify pair-conversion and exchange conversion 2018-05-12 13:39:29 +02:00
Matthias Voppichler
e3ae1c6c2f Convert exchange-name to new format 2018-05-12 13:39:16 +02:00
Matthias Voppichler
40c581e5a8 Convert pair-format to new format 2018-05-12 13:37:42 +02:00
Matthias Voppichler
631081a2b2 Add additional tests 2018-05-12 10:37:17 +02:00
Matthias Voppichler
8e3ff8235f add explaining comments 2018-05-12 10:31:24 +02:00
Matthias Voppichler
ada98abfee fix flake 2018-05-12 10:30:30 +02:00
Matthias Voppichler
49266fc4b8 Add migration test 2018-05-12 10:29:26 +02:00
Matthias Voppichler
f5ff6ceead Rename instead of drop/create 2018-05-12 10:29:10 +02:00
Matthias Voppichler
ab4e2bd5a9 Fix migrate script 2018-05-12 10:04:41 +02:00
Samuel Husso
01b6a0eb53 Freqtrade: ccxt release shall be called 0.17.0 2018-05-12 09:57:10 +03:00
Michael Egger
1dbdb880e6
Merge pull request #637 from arudov/fix/dl-testdata-period2
Time-range download of backtesting data
2018-05-07 17:19:54 +02:00
Matthias Voppichler
ccf1c894b4 Inital try mirate 2018-05-06 09:09:53 +02:00
Matthias Voppichler
d3fb2e4516 Add open_rate_requested and close_rate_requested for slippage detection 2018-05-05 12:57:07 +02:00
Anton
932b65da27 Fix test_optimize.py 2018-05-04 13:59:50 +03:00
Anton
2bfce64e6a Fix conflicts 2018-05-04 13:38:51 +03:00
Gert Wohlgemuth
6d2afdb146 added support for showing the exposed real value on the count table (#634) 2018-05-03 11:18:35 +02:00
gcarq
43fd9b37df fix 'max_open_trades must be greater than 0' regression 2018-05-03 10:48:25 +02:00
Anton
ceeb98dda9 Fix conflicts 2018-05-03 11:16:29 +03:00
gcarq
306885e174 Merge branch 'develop' into feat/objectify-ccxt 2018-05-02 22:49:55 +02: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
a127e1db07 Fix case with empty dict 2018-04-28 01:40:48 +03:00
Anton
2267a420a4 Fix codestyle 2018-04-28 00:30:42 +03:00
Anton
82ea56c8fd Fix review comments. Add support of datetime timeganges 2018-04-28 00:16:34 +03:00
Michael Egger
ecaf6b763c
Merge pull request #623 from xmatthias/cxxt_obj_sellfix
[cxxt][1/2] fix fee calculation in binance
2018-04-26 19:58:24 +02:00
Matthias Voppichler
0987af910e remove indicator name from comment 2018-04-25 20:03:32 +02:00
Matthias Voppichler
2e1124af1a remove unnecessary .keys() 2018-04-25 14:00:25 +02:00