fast_arrow/__init__.py:2:1: F401 'fast_arrow.client.Client' imported but unused
from fast_arrow.client import Client
^
fast_arrow/__init__.py:4:1: F401 'fast_arrow.exceptions.AuthenticationError' imported but unused
from fast_arrow.exceptions import (
^
fast_arrow/__init__.py:4:1: F401 'fast_arrow.exceptions.NotImplementedError' imported but unused
from fast_arrow.exceptions import (
^
fast_arrow/__init__.py:9:1: F401 'fast_arrow.resources.option_chain.OptionChain' imported but unused
from fast_arrow.resources.option_chain import OptionChain
^
fast_arrow/__init__.py:10:1: F401 'fast_arrow.resources.option_event.OptionEvent' imported but unused
from fast_arrow.resources.option_event import OptionEvent
^
fast_arrow/__init__.py:11:1: F401 'fast_arrow.resources.option_order.OptionOrder' imported but unused
from fast_arrow.resources.option_order import OptionOrder
^
fast_arrow/__init__.py:12:1: F401 'fast_arrow.resources.option_marketdata.OptionMarketdata' imported but unused
from fast_arrow.resources.option_marketdata import OptionMarketdata
^
fast_arrow/__init__.py:13:1: F401 'fast_arrow.resources.option_position.OptionPosition' imported but unused
from fast_arrow.resources.option_position import OptionPosition
^
fast_arrow/__init__.py:14:1: F401 'fast_arrow.resources.option.Option' imported but unused
from fast_arrow.resources.option import Option
^
fast_arrow/__init__.py:17:1: F401 'fast_arrow.option_strategies.vertical.Vertical' imported but unused
from fast_arrow.option_strategies.vertical import Vertical as Vertical
^
fast_arrow/__init__.py:18:1: F401 'fast_arrow.option_strategies.iron_condor.IronCondor' imported but unused
from fast_arrow.option_strategies.iron_condor import IronCondor as IronCondor
^
fast_arrow/__init__.py:21:1: F401 'fast_arrow.resources.stock_order.StockOrder' imported but unused
from fast_arrow.resources.stock_order import StockOrder
^
fast_arrow/__init__.py:22:1: F401 'fast_arrow.resources.stock_marketdata.StockMarketdata' imported but unused
from fast_arrow.resources.stock_marketdata import StockMarketdata
^
fast_arrow/__init__.py:23:1: F401 'fast_arrow.resources.stock_position.StockPosition' imported but unused
from fast_arrow.resources.stock_position import StockPosition
^
fast_arrow/__init__.py:24:1: F401 'fast_arrow.resources.stock.Stock' imported but unused
from fast_arrow.resources.stock import Stock
^
fast_arrow/__init__.py:27:1: F401 'fast_arrow.resources.user.User' imported but unused
from fast_arrow.resources.user import User
^
fast_arrow/__init__.py:30:1: F401 'fast_arrow.resources.portfolio.Portfolio' imported but unused
from fast_arrow.resources.portfolio import Portfolio
^
fast_arrow/__init__.py:33:1: F401 'fast_arrow.resources.collection.Collection' imported but unused
from fast_arrow.resources.collection import Collection
^
fast_arrow/__init__.py:36:1: F401 'fast_arrow.resources.dividend.Dividend' imported but unused
from fast_arrow.resources.dividend import Dividend
^
fast_arrow/api_requestor.py:1:1: F401 'requests' imported but unused
import requests
^
fast_arrow/api_requestor.py:5:1: E303 too many blank lines (3)
# def gen_headers(bearer):
^
fast_arrow/api_requestor.py:9:80: E501 line too long (88 > 79 characters)
# "Accept-Language": "en;q=1, fr;q=0.9, de;q=0.8, ja;q=0.7, nl;q=0.6, it;q=0.5",
^
fast_arrow/api_requestor.py:10:80: E501 line too long (147 > 79 characters)
# "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
^
fast_arrow/client.py:4:1: F401 'fast_arrow.resources.user.User' imported but unused
from fast_arrow.resources.user import User
^
fast_arrow/client.py:19:24: E221 multiple spaces before operator
self.account_id = None
^
fast_arrow/client.py:20:25: E221 multiple spaces before operator
self.account_url = None
^
fast_arrow/client.py:21:26: E221 multiple spaces before operator
self.access_token = None
^
fast_arrow/client.py:22:27: E221 multiple spaces before operator
self.refresh_token = None
^
fast_arrow/client.py:23:22: E221 multiple spaces before operator
self.mfa_code = None
^
fast_arrow/client.py:24:19: E221 multiple spaces before operator
self.scope = None
^
fast_arrow/client.py:25:27: E221 multiple spaces before operator
self.authenticated = False
^
fast_arrow/client.py:26:80: E501 line too long (83 > 79 characters)
self.certs = os.path.join(os.path.dirname(__file__), 'ssl_certs/certs.pem')
^
fast_arrow/client.py:29:5: E303 too many blank lines (2)
def authenticate(self):
^
fast_arrow/client.py:34:80: E501 line too long (111 > 79 characters)
self.login_oauth2(self.options["username"], self.options["password"], self.options.get('mfa_code'))
^
fast_arrow/client.py:35:80: E501 line too long (80 > 79 characters)
elif "access_token" in self.options and "refresh_token" in self.options:
^
fast_arrow/client.py:44:5: E303 too many blank lines (2)
def get(self, url=None, params=None, retry=True):
^
fast_arrow/client.py:53:80: E501 line too long (102 > 79 characters)
res = requests.get(url, headers=headers, params=params, timeout=15, verify=self.certs)
^
fast_arrow/client.py:56:13: F841 local variable 'e' is assigned to but never used
except requests.exceptions.RequestException as e:
^
fast_arrow/client.py:62:5: E303 too many blank lines (2)
def post(self, url=None, payload=None, retry=True):
^
fast_arrow/client.py:70:80: E501 line too long (102 > 79 characters)
res = requests.post(url, headers=headers, data=payload, timeout=15, verify=self.certs)
^
fast_arrow/client.py:76:13: F841 local variable 'e' is assigned to but never used
except requests.exceptions.RequestException as e:
^
fast_arrow/client.py:83:5: E303 too many blank lines (3)
def _gen_headers(self, bearer, url):
^
fast_arrow/client.py:90:80: E501 line too long (90 > 79 characters)
"Accept-Language": "en;q=1, fr;q=0.9, de;q=0.8, ja;q=0.7, nl;q=0.6, it;q=0.5",
^
fast_arrow/client.py:91:80: E501 line too long (150 > 79 characters)
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36",
^
fast_arrow/client.py:101:5: E303 too many blank lines (2)
def login_oauth2(self, username, password, mfa_code=None):
^
fast_arrow/client.py:120:80: E501 line too long (99 > 79 characters)
msg = "Client.login_oauth2(). Could not authenticate. Check username and password."
^
fast_arrow/client.py:123:80: E501 line too long (127 > 79 characters)
msg = "Client.login_oauth2(). Could not authenticate. Check username and password, and enter a valid MFA code."
^
fast_arrow/client.py:126:80: E501 line too long (83 > 79 characters)
msg = "Client.login_oauth2(). Could not authenticate. MFA is required."
^
fast_arrow/client.py:129:26: E221 multiple spaces before operator
self.access_token = res["access_token"]
^
fast_arrow/client.py:130:27: E221 multiple spaces before operator
self.refresh_token = res["refresh_token"]
^
fast_arrow/client.py:131:22: E221 multiple spaces before operator
self.mfa_code = res["mfa_code"]
^
fast_arrow/client.py:132:19: E221 multiple spaces before operator
self.scope = res["scope"]
^
fast_arrow/client.py:137:5: E303 too many blank lines (2)
def __set_account_info(self):
^
fast_arrow/client.py:140:80: E501 line too long (91 > 79 characters)
msg = "fast_arrow 'currently' does not handle multiple account authentication."
^
fast_arrow/client.py:151:5: E303 too many blank lines (2)
def relogin_oauth2(self):
^
fast_arrow/client.py:164:26: E221 multiple spaces before operator
self.access_token = res["access_token"]
^
fast_arrow/client.py:165:27: E221 multiple spaces before operator
self.refresh_token = res["refresh_token"]
^
fast_arrow/client.py:166:22: E221 multiple spaces before operator
self.mfa_code = res["mfa_code"]
^
fast_arrow/client.py:167:19: E221 multiple spaces before operator
self.scope = res["scope"]
^
fast_arrow/client.py:170:5: E303 too many blank lines (2)
def logout_oauth2(self):
^
fast_arrow/client.py:180:16: E711 comparison to None should be 'if cond is None:'
if res == None:
^
fast_arrow/client.py:181:28: E221 multiple spaces before operator
self.account_id = None
^
fast_arrow/client.py:182:29: E221 multiple spaces before operator
self.account_url = None
^
fast_arrow/client.py:183:30: E221 multiple spaces before operator
self.access_token = None
^
fast_arrow/client.py:184:31: E221 multiple spaces before operator
self.refresh_token = None
^
fast_arrow/client.py:185:26: E221 multiple spaces before operator
self.mfa_code = None
^
fast_arrow/client.py:186:23: E221 multiple spaces before operator
self.scope = None
^
fast_arrow/client.py:187:31: E221 multiple spaces before operator
self.authenticated = False
^
fast_arrow/exceptions.py:6:1: E302 expected 2 blank lines, found 1
class NotImplementedError(Exception):
^
fast_arrow/exceptions.py:11:1: E302 expected 2 blank lines, found 1
class TradeExecutionError(Exception):
^
fast_arrow/fast_arrow_object.py:6:1: E302 expected 2 blank lines, found 1
class FastArrowObject(dict):
^
fast_arrow/fast_arrow_object.py:14:9: E112 expected an indented block
requestor = api_requestor.ApiRequestor(
^
fast_arrow/fast_arrow_object.py:14:17: E999 IndentationError: expected an indented block
requestor = api_requestor.ApiRequestor(
^
fast_arrow/option_strategies/iron_condor.py:2:1: F401 'pandas as pd' imported but unused
import pandas as pd
^
fast_arrow/option_strategies/iron_condor.py:3:1: F401 'datetime' imported but unused
import datetime
^
fast_arrow/option_strategies/iron_condor.py:11:35: E251 unexpected spaces around keyword / parameter equals
return sorted(options, key = (lambda x: x['strike_price']))
^
fast_arrow/option_strategies/iron_condor.py:11:37: E251 unexpected spaces around keyword / parameter equals
return sorted(options, key = (lambda x: x['strike_price']))
^
fast_arrow/option_strategies/iron_condor.py:14:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/option_strategies/iron_condor.py:15:80: E501 line too long (81 > 79 characters)
def gen_leg(cls, option_url, side, position_effect="open", ratio_quantity=1):
^
fast_arrow/option_strategies/iron_condor.py:26:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/option_strategies/iron_condor.py:38:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/option_strategies/iron_condor.py:45:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/option_strategies/iron_condor.py:47:9: E128 continuation line under-indented for visual indent
width, put_inner_lte_delta, call_inner_lte_delta):
^
fast_arrow/option_strategies/iron_condor.py:47:9: E125 continuation line with same indent as next logical line
width, put_inner_lte_delta, call_inner_lte_delta):
^
fast_arrow/option_strategies/iron_condor.py:64:80: E501 line too long (82 > 79 characters)
put_options_unsorted = list(filter(lambda x: x['type'] == 'put', options))
^
fast_arrow/option_strategies/iron_condor.py:73:80: E501 line too long (87 > 79 characters)
put_inner_leg = cls.gen_leg(put_options[put_inner_index]["instrument"], "sell")
^
fast_arrow/option_strategies/iron_condor.py:74:80: E501 line too long (86 > 79 characters)
put_outer_leg = cls.gen_leg(put_options[put_outer_index]["instrument"], "buy")
^
fast_arrow/option_strategies/iron_condor.py:77:9: E303 too many blank lines (2)
#
^
fast_arrow/option_strategies/iron_condor.py:80:80: E501 line too long (84 > 79 characters)
call_options_unsorted = list(filter(lambda x: x['type'] == 'call', options))
^
fast_arrow/option_strategies/iron_condor.py:88:80: E501 line too long (89 > 79 characters)
# so np.argmax is able to walk up the index until it finds "call_inner_lte_delta"
^
fast_arrow/option_strategies/iron_condor.py:96:80: E501 line too long (90 > 79 characters)
call_inner_leg = cls.gen_leg(call_options[call_inner_index]["instrument"], "sell")
^
fast_arrow/option_strategies/iron_condor.py:97:80: E501 line too long (89 > 79 characters)
call_outer_leg = cls.gen_leg(call_options[call_outer_index]["instrument"], "buy")
^
fast_arrow/option_strategies/iron_condor.py:106:14: E225 missing whitespace around operator
+Decimal(put_options[put_inner_index]['adjusted_mark_price'])
^
fast_arrow/option_strategies/iron_condor.py:107:14: E225 missing whitespace around operator
+Decimal(call_options[call_inner_index]['adjusted_mark_price'])
^
fast_arrow/option_strategies/iron_condor.py:108:14: E225 missing whitespace around operator
-Decimal(call_options[call_outer_index]['adjusted_mark_price'])
^
fast_arrow/option_strategies/iron_condor.py:124:13: E128 continuation line under-indented for visual indent
"max_bid_ask_spread": max_bid_ask_spread}
^
fast_arrow/option_strategies/vertical.py:1:1: F401 'numpy as np' imported but unused
import numpy as np
^
fast_arrow/option_strategies/vertical.py:3:1: F401 'datetime' imported but unused
import datetime
^
fast_arrow/option_strategies/vertical.py:5:1: E302 expected 2 blank lines, found 1
class Vertical(object):
^
fast_arrow/option_strategies/vertical.py:28:80: E501 line too long (88 > 79 characters)
df['expiration_date'] = pd.to_datetime(df['expiration_date'], format="%Y-%m-%d")
^
fast_arrow/option_strategies/vertical.py:34:14: E231 missing whitespace after ','
for k,v in df.groupby("expiration_date"):
^
fast_arrow/option_strategies/vertical.py:41:80: E501 line too long (83 > 79 characters)
df.loc[v.index, "margin"] = v["strike_price"] - sdf["strike_price"]
^
fast_arrow/option_strategies/vertical.py:45:80: E501 line too long (96 > 79 characters)
df.loc[v.index, "premium"] = (v["adjusted_mark_price"] - sdf["adjusted_mark_price"])
^
fast_arrow/resources/__init__.py:1:1: W391 blank line at end of file
^
fast_arrow/resources/option.py:13:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option.py:18:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option.py:67:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option.py:89:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option.py:99:23: E225 missing whitespace around operator
if len(md)>0:
^
fast_arrow/resources/option.py:102:36: E201 whitespace after '('
merged_dict = dict( list(o.items()) + list(md.items()) )
^
fast_arrow/resources/option.py:102:71: E202 whitespace before ')'
merged_dict = dict( list(o.items()) + list(md.items()) )
^
fast_arrow/resources/option.py:104:36: E201 whitespace after '('
merged_dict = dict( list(o.items()) )
^
fast_arrow/resources/option.py:104:52: E202 whitespace before ')'
merged_dict = dict( list(o.items()) )
^
fast_arrow/resources/option_chain.py:15:9: E306 expected 1 blank line before a nested definition, found 0
def filter_func(x):
^
fast_arrow/resources/option_event.py:13:19: E201 whitespace after '{'
params = { }
^
fast_arrow/resources/option_event.py:22:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_event.py:33:32: E201 whitespace after '('
merged_dict = dict( list(oe.items()) + list(merge_me.items()) )
^
fast_arrow/resources/option_event.py:33:74: E202 whitespace before ')'
merged_dict = dict( list(oe.items()) + list(merge_me.items()) )
^
fast_arrow/resources/option_event.py:38:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_event.py:51:26: E711 comparison to None should be 'if cond is None:'
if oe[k] == None:
^
fast_arrow/resources/option_marketdata.py:11:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_marketdata.py:18:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_marketdata.py:23:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_marketdata.py:33:60: F821 undefined name 'bearer'
data = client.get(data["next"], bearer=bearer)
^
fast_arrow/resources/option_marketdata.py:39:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_marketdata.py:44:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_marketdata.py:51:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_marketdata.py:56:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_marketdata.py:62:28: E202 whitespace before '}'
"5year": "week" }
^
fast_arrow/resources/option_marketdata.py:66:80: E501 line too long (81 > 79 characters)
request_url = "https://api.robinhood.com/marketdata/options/historicals/"
^
fast_arrow/resources/option_marketdata.py:68:23: E201 whitespace after '{'
params = { "span": span, "interval": interval, "instruments": ",".join(_urls) }
^
fast_arrow/resources/option_marketdata.py:68:80: E501 line too long (91 > 79 characters)
params = { "span": span, "interval": interval, "instruments": ",".join(_urls) }
^
fast_arrow/resources/option_marketdata.py:68:90: E202 whitespace before '}'
params = { "span": span, "interval": interval, "instruments": ",".join(_urls) }
^
fast_arrow/resources/option_order.py:1:1: F401 'fast_arrow.resources.option.Option' imported but unused
from fast_arrow.resources.option import Option
^
fast_arrow/resources/option_order.py:2:1: F401 'fast_arrow.exceptions.NotImplementedError' imported but unused
from fast_arrow.exceptions import NotImplementedError, TradeExecutionError
^
fast_arrow/resources/option_order.py:17:80: E501 line too long (80 > 79 characters)
max_fetches = kwargs['max_fetches'] if 'max_fetches' in kwargs else None
^
fast_arrow/resources/option_order.py:40:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_order.py:47:26: E711 comparison to None should be 'if cond is None:'
if oo[k] == None:
^
fast_arrow/resources/option_order.py:54:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_order.py:72:26: E231 missing whitespace after ','
for k,v in oo.items():
^
fast_arrow/resources/option_order.py:73:80: E501 line too long (129 > 79 characters)
if k not in ['legs', 'price', 'type', 'premium', 'processed_premium', 'response_category', 'cancel_url']:
^
fast_arrow/resources/option_order.py:85:26: E231 missing whitespace after ','
for k,v in leg.items():
^
fast_arrow/resources/option_order.py:97:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_order.py:98:80: E501 line too long (120 > 79 characters)
def submit(cls, client, direction, legs, price, quantity, time_in_force, trigger, order_type, run_validations=True):
^
fast_arrow/resources/option_order.py:152:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_order.py:161:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_position.py:4:1: F401 'fast_arrow.util.chunked_list' imported but unused
from fast_arrow.util import chunked_list, is_max_date_gt
^
fast_arrow/resources/option_position.py:15:80: E501 line too long (80 > 79 characters)
max_fetches = kwargs['max_fetches'] if 'max_fetches' in kwargs else None
^
fast_arrow/resources/option_position.py:18:19: E201 whitespace after '{'
params = { }
^
fast_arrow/resources/option_position.py:39:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_position.py:47:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_position.py:60:32: E201 whitespace after '('
merged_dict = dict( list(op.items()) + list(md.items()) )
^
fast_arrow/resources/option_position.py:60:68: E202 whitespace before ')'
merged_dict = dict( list(op.items()) + list(md.items()) )
^
fast_arrow/resources/option_position.py:65:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_position.py:73:80: E501 line too long (120 > 79 characters)
# there is an overlap in keys, {'chain_symbol', 'url', 'type', 'created_at', 'id', 'updated_at', 'chain_id'}
^
fast_arrow/resources/option_position.py:77:80: E501 line too long (85 > 79 characters)
# idata_subset = dict((k, idata[k]) for k in wanted_keys if k in idata)
^
fast_arrow/resources/option_position.py:84:32: E201 whitespace after '('
merged_dict = dict( list(op.items()) + list(merge_me.items()) )
^
fast_arrow/resources/option_position.py:84:74: E202 whitespace before ')'
merged_dict = dict( list(op.items()) + list(merge_me.items()) )
^
fast_arrow/resources/option_position.py:90:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/option_position.py:105:26: E711 comparison to None should be 'if cond is None:'
if op[k] == None:
^
fast_arrow/resources/option_position.py:109:80: E501 line too long (124 > 79 characters)
op["chance_of_profit"] = (op["chance_of_profit_long"] if op["type"] == "long" else op["chance_of_profit_short"])
^
fast_arrow/resources/option_position.py:116:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/portfolio.py:9:28: E202 whitespace before '}'
"5year": "week" }
^
fast_arrow/resources/portfolio.py:16:19: E201 whitespace after '{'
params = { "span": span, "interval": interval, "bounds": bounds }
^
fast_arrow/resources/portfolio.py:16:72: E202 whitespace before '}'
params = { "span": span, "interval": interval, "bounds": bounds }
^
fast_arrow/resources/stock.py:3:1: E302 expected 2 blank lines, found 1
class Stock(object):
^
fast_arrow/resources/stock.py:12:80: E501 line too long (80 > 79 characters)
url = "https://api.robinhood.com/instruments/?symbol={0}".format(symbol)
^
fast_arrow/resources/stock.py:26:23: E225 missing whitespace around operator
if len(md)>0:
^
fast_arrow/resources/stock.py:32:36: E201 whitespace after '('
merged_dict = dict( list(s.items()) + list(md_kv.items()) )
^
fast_arrow/resources/stock.py:32:74: E202 whitespace before ')'
merged_dict = dict( list(s.items()) + list(md_kv.items()) )
^
fast_arrow/resources/stock.py:34:36: E201 whitespace after '('
merged_dict = dict( list(s.items()) )
^
fast_arrow/resources/stock.py:34:52: E202 whitespace before ')'
merged_dict = dict( list(s.items()) )
^
fast_arrow/resources/stock.py:39:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/stock.py:51:52: F821 undefined name 'bearer'
data = client.get(data["next"], bearer=bearer)
^
fast_arrow/resources/stock_marketdata.py:1:1: F401 'fast_arrow.util.chunked_list' imported but unused
from fast_arrow.util import chunked_list
^
fast_arrow/resources/stock_marketdata.py:37:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/stock_marketdata.py:47:5: E303 too many blank lines (2)
@classmethod
^
fast_arrow/resources/stock_marketdata.py:58:52: F821 undefined name 'bearer'
data = client.get(data["next"], bearer=bearer)
^
tests/test_util.py:5:1: E302 expected 2 blank lines, found 1
def gen_vcr():
^
tests/test_util.py:12:1: E302 expected 2 blank lines, found 1
def gen_client():
^
tests/resources/test_dividend.py:4:1: F401 'unittest' imported but unused
import unittest
^
tests/resources/test_dividend.py:6:1: E302 expected 2 blank lines, found 1
class TestDividend(object):
^
tests/resources/test_dividend.py:15:17: E128 continuation line under-indented for visual indent
'payable_date', 'instrument', 'rate',
^
tests/resources/test_dividend.py:16:17: E128 continuation line under-indented for visual indent
'record_date', 'position', 'withholding', 'id', 'paid_at']
^
tests/resources/test_option_chain.py:3:1: F401 'unittest' imported but unused
import unittest
^
tests/resources/test_position.py:4:1: F401 'unittest' imported but unused
import unittest
^
tests/resources/test_position.py:6:1: E302 expected 2 blank lines, found 1
class TestPosition(object):
^
tests/resources/test_position.py:19:29: E231 missing whitespace after ','
'updated_at','shares_held_for_buys', 'average_buy_price',
^
tests/resources/test_position.py:20:29: E231 missing whitespace after ','
'instrument','intraday_quantity', 'shares_held_for_sells',
^
tests/resources/test_stock.py:4:1: F401 'unittest' imported but unused
import unittest
^
tests/resources/test_stock.py:6:1: E302 expected 2 blank lines, found 1
class TestStock(object):
^
tests/resources/test_stock.py:15:17: E128 continuation line under-indented for visual indent
'market', 'simple_name', 'min_tick_size', 'maintenance_ratio',
^
tests/resources/test_stock.py:16:17: E128 continuation line under-indented for visual indent
'tradability', 'state', 'type', 'tradeable', 'fundamentals',
^
tests/resources/test_stock.py:17:17: E128 continuation line under-indented for visual indent
'quote', 'symbol', 'day_trade_ratio', 'name',
^
tests/resources/test_stock.py:18:17: E128 continuation line under-indented for visual indent
'tradable_chain_id', 'splits', 'url', 'country',
^
tests/resources/test_stock.py:19:17: E128 continuation line under-indented for visual indent
'bloomberg_unique', 'list_date']
^
tests/resources/test_stockorder.py:4:1: F401 'unittest' imported but unused
import unittest
^
tests/resources/test_stockorder.py:6:1: E302 expected 2 blank lines, found 1
class TestStockOrder(object):
^
tests/resources/test_stockorder.py:15:17: E128 continuation line under-indented for visual indent
'fees', 'cancel', 'response_category',
^
tests/resources/test_stockorder.py:16:17: E128 continuation line under-indented for visual indent
'id', 'cumulative_quantity', 'stop_price', 'reject_reason', 'instrument',
^
tests/resources/test_stockorder.py:16:80: E501 line too long (89 > 79 characters)
'id', 'cumulative_quantity', 'stop_price', 'reject_reason', 'instrument',
^
tests/resources/test_stockorder.py:17:17: E128 continuation line under-indented for visual indent
'state', 'trigger', 'override_dtbp_checks', 'type',
^
tests/resources/test_stockorder.py:18:17: E128 continuation line under-indented for visual indent
'last_transaction_at', 'price', 'executions', 'extended_hours',
^
tests/resources/test_stockorder.py:19:17: E128 continuation line under-indented for visual indent
'account', 'url', 'created_at', 'side', 'override_day_trade_checks', 'position',
^
tests/resources/test_stockorder.py:19:80: E501 line too long (96 > 79 characters)
'account', 'url', 'created_at', 'side', 'override_day_trade_checks', 'position',
^
tests/resources/test_stockorder.py:20:17: E128 continuation line under-indented for visual indent
'average_price', 'quantity']
^
tests/resources/test_user.py:4:1: F401 'unittest' imported but unused
import unittest
^
tests/resources/test_user.py:6:1: E302 expected 2 blank lines, found 1
class TestUser(object):
^
setup.py:1:1: F401 'os' imported but unused
import os
^
setup.py:49:5: E128 continuation line under-indented for visual indent
version=version_contents['VERSION'],
^
setup.py:50:5: E128 continuation line under-indented for visual indent
description='A simple yet robust API client for Robinhood',
^
setup.py:51:5: E128 continuation line under-indented for visual indent
long_description=long_description,
^
setup.py:52:5: E128 continuation line under-indented for visual indent
long_description_content_type="text/markdown",
^
setup.py:53:5: E128 continuation line under-indented for visual indent
author='Weston Platter',
^
setup.py:54:5: E128 continuation line under-indented for visual indent
author_email='[email protected]',
^
setup.py:55:5: E128 continuation line under-indented for visual indent
url='https://github.com/westonplatter/fast_arrow/',
^
setup.py:56:5: E128 continuation line under-indented for visual indent
license='MIT License',
^
setup.py:57:5: E128 continuation line under-indented for visual indent
python_requires=">=3.5",
^
setup.py:58:5: E128 continuation line under-indented for visual indent
packages=['fast_arrow', 'fast_arrow.resources', 'fast_arrow.option_strategies'],
^
setup.py:58:80: E501 line too long (84 > 79 characters)
packages=['fast_arrow', 'fast_arrow.resources', 'fast_arrow.option_strategies'],
^
setup.py:59:5: E128 continuation line under-indented for visual indent
package_data={'fast_arrow': ['ssl_certs/certs.pem']},
^
setup.py:60:5: E128 continuation line under-indented for visual indent
install_requires=deps,
^
setup.py:61:5: E128 continuation line under-indented for visual indent
tests_require=test_deps,
^
setup.py:62:5: E128 continuation line under-indented for visual indent
cmdclass={'test': PyTest},
^
setup.py:63:5: E128 continuation line under-indented for visual indent
project_urls={