Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IEX Pricing Error - TypeError: float() argument must be a string or a number, not 'NoneType' #11

Open
rwburke2 opened this issue Jan 17, 2019 · 2 comments

Comments

@rwburke2
Copy link

When retrieving historical quotes from IEX receive the following:

019-01-17 14:47:04,919:INFO - quote_source:66 - connected:True
https://api.iextrading.com/1.0/stock/tqqq/chart/date/20190116
390
storing quotes:
2019-01-17 14:47:05,335:ERROR - api:661 - Error occurred while invoking handle_data: float() argument must be a string or a number, not 'NoneType'
Traceback (most recent call last):
File "/home/ubuntu/projects/friartuck/friartuck_startfish_prime_1/friartuck/api.py", line 656, in _time_interval_processor
self.active_algo.handle_data(self.context, self.friar_data)
File "/home/ubuntu/projects/friartuck/friartuck_startfish_prime_1/starfish_prime_12_11_18_TQQQ.py", line 194, in handle_data
CalcRsi(context, data)
File "/home/ubuntu/projects/friartuck/friartuck_startfish_prime_1/starfish_prime_12_11_18_TQQQ.py", line 235, in CalcRsi
prices = data.history(context.asset, frequency='1m', bar_count=1600, field=['price'])
File "/home/ubuntu/projects/friartuck/friartuck_startfish_prime_1/friartuck/api.py", line 94, in history
return self.friar_tuck_live.history(security, bar_count, frequency, field)
File "/home/ubuntu/projects/friartuck/friartuck_startfish_prime_1/friartuck/api.py", line 290, in history
quotes = self.quote_source.fetch_quotes(symbol=symbol_map.keys(), bar_count=bar_count, frequency=frequency, field=field, market_open=self.is_market_open, since_last_quote_time=since_last_quote_time)
File "/home/ubuntu/projects/friartuck/friartuck_startfish_prime_1/friartuck/quote_source.py", line 110, in fetch_quotes
symbol_bars[sym] = self._fetch_quotes_by_sym(symbol=sym, bar_count=bar_count, frequency=frequency, field=field, market_open=market_open, since_last_quote_time=since_last_quote_time)
File "/home/ubuntu/projects/friartuck/friartuck_startfish_prime_1/friartuck/quote_source.py", line 138, in _fetch_quotes_by_sym
new_bars = self.iex.get_quote_intraday_hist_by_bars(symbol=symbol, minute_series=self.allowed_history_frequency[frequency], bars=bar_count, before_date=before_date)
File "/home/ubuntu/projects/friartuck/friartuck_startfish_prime_1/friartuck/iextrading/iextrading.py", line 153, in get_quote_intraday_hist_by_bars
my_bars = summarize_quote(quotes, minute_series)
File "/home/ubuntu/projects/friartuck/friartuck_startfish_prime_1/friartuck/iextrading/iextrading.py", line 216, in summarize_quote
market_close = is_valid_value(float(quote_data['marketClose']), float(get_field_value('close', quote_data, -1)))
TypeError: float() argument must be a string or a number, not 'NoneType'

@codesociety
Copy link
Owner

I noticed iex sending null for some fields which is possibly the cause of the error... made some changes to the iex code python file to remedy that... check it out to see if that solves the issue.

@rwburke2
Copy link
Author

yep - - looks like it resolved it - - thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants