snaptrade 1.13.0 → 1.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (308) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +10 -10
  3. data/Gemfile.lock +11 -13
  4. data/README.md +221 -220
  5. data/docs/APIStatusApi.md +57 -57
  6. data/docs/AccountInformationApi.md +535 -535
  7. data/docs/AuthenticationApi.md +314 -314
  8. data/docs/BrokerageSymbol.md +28 -28
  9. data/docs/BrokerageSymbolOptionSymbol.md +32 -38
  10. data/docs/BrokerageSymbolSymbol.md +32 -32
  11. data/docs/ConnectionsApi.md +265 -265
  12. data/docs/ErrorLogsApi.md +68 -68
  13. data/docs/OptionsApi.md +378 -378
  14. data/docs/OptionsPosition.md +10 -8
  15. data/docs/OptionsPositionCurrency.md +22 -0
  16. data/docs/OptionsSymbol.md +3 -9
  17. data/docs/Position.md +3 -1
  18. data/docs/ReferenceDataApi.md +595 -595
  19. data/docs/TradingApi.md +478 -478
  20. data/docs/TransactionsAndReportingApi.md +183 -183
  21. data/docs/UniversalActivity.md +48 -48
  22. data/docs/UserIDandSecret.md +20 -20
  23. data/lib/snaptrade/api/account_information_api.rb +801 -801
  24. data/lib/snaptrade/api/api_status_api.rb +98 -98
  25. data/lib/snaptrade/api/authentication_api.rb +481 -481
  26. data/lib/snaptrade/api/connections_api.rb +398 -398
  27. data/lib/snaptrade/api/error_logs_api.rb +112 -112
  28. data/lib/snaptrade/api/options_api.rb +591 -591
  29. data/lib/snaptrade/api/reference_data_api.rb +894 -894
  30. data/lib/snaptrade/api/trading_api.rb +741 -741
  31. data/lib/snaptrade/api/transactions_and_reporting_api.rb +283 -283
  32. data/lib/snaptrade/api_client.rb +427 -427
  33. data/lib/snaptrade/api_client_custom.rb +32 -32
  34. data/lib/snaptrade/api_error.rb +6 -6
  35. data/lib/snaptrade/configuration.rb +334 -334
  36. data/lib/snaptrade/models/account.rb +6 -6
  37. data/lib/snaptrade/models/account_holdings.rb +6 -6
  38. data/lib/snaptrade/models/account_holdings_account.rb +6 -6
  39. data/lib/snaptrade/models/account_order_record.rb +6 -6
  40. data/lib/snaptrade/models/account_order_record_status.rb +6 -6
  41. data/lib/snaptrade/models/account_simple.rb +6 -6
  42. data/lib/snaptrade/models/account_sync_status.rb +6 -6
  43. data/lib/snaptrade/models/action.rb +6 -6
  44. data/lib/snaptrade/models/auth_type.rb +6 -6
  45. data/lib/snaptrade/models/authentication_login_snap_trade_user200_response.rb +6 -6
  46. data/lib/snaptrade/models/balance.rb +6 -6
  47. data/lib/snaptrade/models/brokerage.rb +6 -6
  48. data/lib/snaptrade/models/brokerage_authorization.rb +6 -6
  49. data/lib/snaptrade/models/brokerage_authorization_type.rb +6 -6
  50. data/lib/snaptrade/models/brokerage_authorization_type_read_only.rb +6 -6
  51. data/lib/snaptrade/models/brokerage_authorization_type_read_only_brokerage.rb +6 -6
  52. data/lib/snaptrade/models/brokerage_authorization_type_read_only_type.rb +6 -6
  53. data/lib/snaptrade/models/brokerage_authorization_type_type.rb +6 -6
  54. data/lib/snaptrade/models/brokerage_symbol.rb +266 -266
  55. data/lib/snaptrade/models/brokerage_symbol_option_symbol.rb +287 -316
  56. data/lib/snaptrade/models/brokerage_symbol_symbol.rb +290 -290
  57. data/lib/snaptrade/models/brokerage_type.rb +6 -6
  58. data/lib/snaptrade/models/calculated_trade.rb +6 -6
  59. data/lib/snaptrade/models/cash_restriction.rb +6 -6
  60. data/lib/snaptrade/models/connection_type.rb +6 -6
  61. data/lib/snaptrade/models/connections_session_events200_response_inner.rb +6 -6
  62. data/lib/snaptrade/models/currency.rb +6 -6
  63. data/lib/snaptrade/models/delete_user_response.rb +6 -6
  64. data/lib/snaptrade/models/dividend_at_date.rb +6 -6
  65. data/lib/snaptrade/models/encrypted_response.rb +6 -6
  66. data/lib/snaptrade/models/encrypted_response_encrypted_message_data.rb +6 -6
  67. data/lib/snaptrade/models/exchange.rb +6 -6
  68. data/lib/snaptrade/models/exchange_rate_pairs.rb +6 -6
  69. data/lib/snaptrade/models/excluded_asset.rb +6 -6
  70. data/lib/snaptrade/models/jwt.rb +6 -6
  71. data/lib/snaptrade/models/login_redirect_uri.rb +6 -6
  72. data/lib/snaptrade/models/manual_trade.rb +6 -6
  73. data/lib/snaptrade/models/manual_trade_and_impact.rb +6 -6
  74. data/lib/snaptrade/models/manual_trade_balance.rb +6 -6
  75. data/lib/snaptrade/models/manual_trade_form.rb +6 -6
  76. data/lib/snaptrade/models/manual_trade_symbol.rb +6 -6
  77. data/lib/snaptrade/models/model400_failed_request_response.rb +6 -6
  78. data/lib/snaptrade/models/model401_failed_request_response.rb +6 -6
  79. data/lib/snaptrade/models/model403_failed_request_response.rb +6 -6
  80. data/lib/snaptrade/models/model404_failed_request_response.rb +6 -6
  81. data/lib/snaptrade/models/model_asset_class.rb +6 -6
  82. data/lib/snaptrade/models/model_asset_class_details.rb +6 -6
  83. data/lib/snaptrade/models/model_asset_class_target.rb +6 -6
  84. data/lib/snaptrade/models/model_portfolio.rb +6 -6
  85. data/lib/snaptrade/models/model_portfolio_asset_class.rb +6 -6
  86. data/lib/snaptrade/models/model_portfolio_details.rb +6 -6
  87. data/lib/snaptrade/models/model_portfolio_security.rb +6 -6
  88. data/lib/snaptrade/models/model_type.rb +6 -6
  89. data/lib/snaptrade/models/monthly_dividends.rb +6 -6
  90. data/lib/snaptrade/models/net_contributions.rb +6 -6
  91. data/lib/snaptrade/models/net_dividend.rb +6 -6
  92. data/lib/snaptrade/models/option_chain_inner.rb +6 -6
  93. data/lib/snaptrade/models/option_chain_inner_chain_per_root_inner.rb +6 -6
  94. data/lib/snaptrade/models/option_chain_inner_chain_per_root_inner_chain_per_strike_price_inner.rb +6 -6
  95. data/lib/snaptrade/models/option_leg.rb +6 -6
  96. data/lib/snaptrade/models/option_leg_action.rb +6 -6
  97. data/lib/snaptrade/models/option_strategy.rb +6 -6
  98. data/lib/snaptrade/models/option_strategy_legs_inner.rb +6 -6
  99. data/lib/snaptrade/models/options_get_option_strategy_request.rb +6 -6
  100. data/lib/snaptrade/models/options_holdings.rb +6 -6
  101. data/lib/snaptrade/models/options_place_option_strategy_request.rb +6 -6
  102. data/lib/snaptrade/models/options_position.rb +46 -31
  103. data/lib/snaptrade/models/options_position_currency.rb +242 -0
  104. data/lib/snaptrade/models/options_symbol.rb +13 -42
  105. data/lib/snaptrade/models/order_strategy_execute_body_order_type.rb +6 -6
  106. data/lib/snaptrade/models/order_strategy_execute_body_time_in_force.rb +6 -6
  107. data/lib/snaptrade/models/order_type.rb +6 -6
  108. data/lib/snaptrade/models/partner_data.rb +6 -6
  109. data/lib/snaptrade/models/past_value.rb +6 -6
  110. data/lib/snaptrade/models/performance_custom.rb +6 -6
  111. data/lib/snaptrade/models/portfolio_group.rb +6 -6
  112. data/lib/snaptrade/models/portfolio_group_info.rb +6 -6
  113. data/lib/snaptrade/models/portfolio_group_position.rb +6 -6
  114. data/lib/snaptrade/models/portfolio_group_settings.rb +6 -6
  115. data/lib/snaptrade/models/position.rb +22 -11
  116. data/lib/snaptrade/models/position_symbol.rb +6 -6
  117. data/lib/snaptrade/models/redirect_tokenand_pin.rb +6 -6
  118. data/lib/snaptrade/models/security_type.rb +6 -6
  119. data/lib/snaptrade/models/session_event.rb +6 -6
  120. data/lib/snaptrade/models/session_event_type.rb +6 -6
  121. data/lib/snaptrade/models/snap_trade_api_disclaimer_accept_status.rb +6 -6
  122. data/lib/snaptrade/models/snap_trade_holdings_account.rb +6 -6
  123. data/lib/snaptrade/models/snap_trade_holdings_account_account_id.rb +6 -6
  124. data/lib/snaptrade/models/snap_trade_holdings_total_value.rb +6 -6
  125. data/lib/snaptrade/models/snap_trade_login_user_request_body.rb +6 -6
  126. data/lib/snaptrade/models/snap_trade_register_user_request_body.rb +6 -6
  127. data/lib/snaptrade/models/state.rb +6 -6
  128. data/lib/snaptrade/models/status.rb +6 -6
  129. data/lib/snaptrade/models/strategy_impact.rb +6 -6
  130. data/lib/snaptrade/models/strategy_impact_legs_inner.rb +6 -6
  131. data/lib/snaptrade/models/strategy_order_place.rb +6 -6
  132. data/lib/snaptrade/models/strategy_order_place_orders_inner.rb +6 -6
  133. data/lib/snaptrade/models/strategy_order_place_orders_inner_legs_inner.rb +6 -6
  134. data/lib/snaptrade/models/strategy_order_record.rb +6 -6
  135. data/lib/snaptrade/models/strategy_order_record_order_type.rb +6 -6
  136. data/lib/snaptrade/models/strategy_order_record_status.rb +6 -6
  137. data/lib/snaptrade/models/strategy_order_record_time_in_force.rb +6 -6
  138. data/lib/snaptrade/models/strategy_quotes.rb +6 -6
  139. data/lib/snaptrade/models/strategy_quotes_greek.rb +6 -6
  140. data/lib/snaptrade/models/strategy_type.rb +6 -6
  141. data/lib/snaptrade/models/sub_period_return_rate.rb +6 -6
  142. data/lib/snaptrade/models/symbol.rb +6 -6
  143. data/lib/snaptrade/models/symbol_query.rb +6 -6
  144. data/lib/snaptrade/models/symbols_quotes_inner.rb +6 -6
  145. data/lib/snaptrade/models/target_asset.rb +6 -6
  146. data/lib/snaptrade/models/time_in_force.rb +6 -6
  147. data/lib/snaptrade/models/trade.rb +6 -6
  148. data/lib/snaptrade/models/trade_action.rb +6 -6
  149. data/lib/snaptrade/models/trade_execution_status.rb +6 -6
  150. data/lib/snaptrade/models/trade_execution_status_action.rb +6 -6
  151. data/lib/snaptrade/models/trade_impact.rb +6 -6
  152. data/lib/snaptrade/models/trading_cancel_user_account_order_request.rb +6 -6
  153. data/lib/snaptrade/models/trading_place_oco_order_request.rb +6 -6
  154. data/lib/snaptrade/models/transactions_status.rb +6 -6
  155. data/lib/snaptrade/models/type.rb +6 -6
  156. data/lib/snaptrade/models/underlying_symbol.rb +6 -6
  157. data/lib/snaptrade/models/universal_activity.rb +360 -360
  158. data/lib/snaptrade/models/universal_symbol.rb +6 -6
  159. data/lib/snaptrade/models/universal_symbol_ticker.rb +6 -6
  160. data/lib/snaptrade/models/us_exchange.rb +6 -6
  161. data/lib/snaptrade/models/user_error_log.rb +6 -6
  162. data/lib/snaptrade/models/user_i_dand_secret.rb +229 -229
  163. data/lib/snaptrade/models/user_settings.rb +6 -6
  164. data/lib/snaptrade/version.rb +13 -13
  165. data/lib/snaptrade.rb +214 -213
  166. data/snaptrade.gemspec +41 -41
  167. data/spec/api/account_information_api_spec.rb +135 -135
  168. data/spec/api/api_status_api_spec.rb +42 -42
  169. data/spec/api/authentication_api_spec.rb +88 -88
  170. data/spec/api/connections_api_spec.rb +82 -82
  171. data/spec/api/error_logs_api_spec.rb +43 -43
  172. data/spec/api/options_api_spec.rb +101 -101
  173. data/spec/api/reference_data_api_spec.rb +150 -150
  174. data/spec/api/trading_api_spec.rb +112 -112
  175. data/spec/api/transactions_and_reporting_api_spec.rb +67 -67
  176. data/spec/api_client_spec.rb +193 -193
  177. data/spec/configuration_spec.rb +6 -6
  178. data/spec/getting_started_spec.rb +108 -108
  179. data/spec/models/account_holdings_account_spec.rb +54 -54
  180. data/spec/models/account_holdings_spec.rb +48 -48
  181. data/spec/models/account_order_record_spec.rb +132 -132
  182. data/spec/models/account_order_record_status_spec.rb +24 -24
  183. data/spec/models/account_simple_spec.rb +48 -48
  184. data/spec/models/account_spec.rb +84 -84
  185. data/spec/models/account_sync_status_spec.rb +30 -30
  186. data/spec/models/action_spec.rb +24 -24
  187. data/spec/models/auth_type_spec.rb +24 -24
  188. data/spec/models/authentication_login_snap_trade_user200_response_spec.rb +27 -27
  189. data/spec/models/balance_spec.rb +36 -36
  190. data/spec/models/brokerage_authorization_spec.rb +78 -78
  191. data/spec/models/brokerage_authorization_type_read_only_brokerage_spec.rb +42 -42
  192. data/spec/models/brokerage_authorization_type_read_only_spec.rb +48 -48
  193. data/spec/models/brokerage_authorization_type_read_only_type_spec.rb +24 -24
  194. data/spec/models/brokerage_authorization_type_spec.rb +30 -30
  195. data/spec/models/brokerage_authorization_type_type_spec.rb +24 -24
  196. data/spec/models/brokerage_spec.rb +132 -132
  197. data/spec/models/brokerage_symbol_option_symbol_spec.rb +72 -90
  198. data/spec/models/brokerage_symbol_spec.rb +60 -60
  199. data/spec/models/brokerage_symbol_symbol_spec.rb +72 -72
  200. data/spec/models/brokerage_type_spec.rb +36 -36
  201. data/spec/models/calculated_trade_spec.rb +36 -36
  202. data/spec/models/cash_restriction_spec.rb +54 -54
  203. data/spec/models/connection_type_spec.rb +24 -24
  204. data/spec/models/connections_session_events200_response_inner_spec.rb +66 -66
  205. data/spec/models/currency_spec.rb +42 -42
  206. data/spec/models/delete_user_response_spec.rb +36 -36
  207. data/spec/models/dividend_at_date_spec.rb +42 -42
  208. data/spec/models/encrypted_response_encrypted_message_data_spec.rb +42 -42
  209. data/spec/models/encrypted_response_spec.rb +36 -36
  210. data/spec/models/exchange_rate_pairs_spec.rb +42 -42
  211. data/spec/models/exchange_spec.rb +72 -72
  212. data/spec/models/excluded_asset_spec.rb +30 -30
  213. data/spec/models/jwt_spec.rb +30 -30
  214. data/spec/models/login_redirect_uri_spec.rb +36 -36
  215. data/spec/models/manual_trade_and_impact_spec.rb +42 -42
  216. data/spec/models/manual_trade_balance_spec.rb +42 -42
  217. data/spec/models/manual_trade_form_spec.rb +72 -72
  218. data/spec/models/manual_trade_spec.rb +72 -72
  219. data/spec/models/manual_trade_symbol_spec.rb +60 -60
  220. data/spec/models/model400_failed_request_response_spec.rb +36 -36
  221. data/spec/models/model401_failed_request_response_spec.rb +36 -36
  222. data/spec/models/model403_failed_request_response_spec.rb +36 -36
  223. data/spec/models/model404_failed_request_response_spec.rb +36 -36
  224. data/spec/models/model_asset_class_details_spec.rb +36 -36
  225. data/spec/models/model_asset_class_spec.rb +36 -36
  226. data/spec/models/model_asset_class_target_spec.rb +30 -30
  227. data/spec/models/model_portfolio_asset_class_spec.rb +36 -36
  228. data/spec/models/model_portfolio_details_spec.rb +42 -42
  229. data/spec/models/model_portfolio_security_spec.rb +36 -36
  230. data/spec/models/model_portfolio_spec.rb +42 -42
  231. data/spec/models/model_type_spec.rb +24 -24
  232. data/spec/models/monthly_dividends_spec.rb +36 -36
  233. data/spec/models/net_contributions_spec.rb +42 -42
  234. data/spec/models/net_dividend_spec.rb +42 -42
  235. data/spec/models/option_chain_inner_chain_per_root_inner_chain_per_strike_price_inner_spec.rb +42 -42
  236. data/spec/models/option_chain_inner_chain_per_root_inner_spec.rb +42 -42
  237. data/spec/models/option_chain_inner_spec.rb +54 -54
  238. data/spec/models/option_leg_action_spec.rb +24 -24
  239. data/spec/models/option_leg_spec.rb +42 -42
  240. data/spec/models/option_strategy_legs_inner_spec.rb +48 -48
  241. data/spec/models/option_strategy_spec.rb +54 -54
  242. data/spec/models/options_get_option_strategy_request_spec.rb +42 -42
  243. data/spec/models/options_holdings_spec.rb +60 -60
  244. data/spec/models/options_place_option_strategy_request_spec.rb +42 -42
  245. data/spec/models/options_position_currency_spec.rb +42 -0
  246. data/spec/models/options_position_spec.rb +72 -66
  247. data/spec/models/options_symbol_spec.rb +72 -90
  248. data/spec/models/order_strategy_execute_body_order_type_spec.rb +24 -24
  249. data/spec/models/order_strategy_execute_body_time_in_force_spec.rb +24 -24
  250. data/spec/models/order_type_spec.rb +24 -24
  251. data/spec/models/partner_data_spec.rb +96 -96
  252. data/spec/models/past_value_spec.rb +42 -42
  253. data/spec/models/performance_custom_spec.rb +138 -138
  254. data/spec/models/portfolio_group_info_spec.rb +90 -90
  255. data/spec/models/portfolio_group_position_spec.rb +42 -42
  256. data/spec/models/portfolio_group_settings_spec.rb +54 -54
  257. data/spec/models/portfolio_group_spec.rb +36 -36
  258. data/spec/models/position_spec.rb +66 -60
  259. data/spec/models/position_symbol_spec.rb +60 -60
  260. data/spec/models/redirect_tokenand_pin_spec.rb +36 -36
  261. data/spec/models/security_type_spec.rb +48 -48
  262. data/spec/models/session_event_spec.rb +66 -66
  263. data/spec/models/session_event_type_spec.rb +24 -24
  264. data/spec/models/snap_trade_api_disclaimer_accept_status_spec.rb +36 -36
  265. data/spec/models/snap_trade_holdings_account_account_id_spec.rb +78 -78
  266. data/spec/models/snap_trade_holdings_account_spec.rb +72 -72
  267. data/spec/models/snap_trade_holdings_total_value_spec.rb +36 -36
  268. data/spec/models/snap_trade_login_user_request_body_spec.rb +54 -54
  269. data/spec/models/snap_trade_register_user_request_body_spec.rb +36 -36
  270. data/spec/models/state_spec.rb +24 -24
  271. data/spec/models/status_spec.rb +42 -42
  272. data/spec/models/strategy_impact_legs_inner_spec.rb +66 -66
  273. data/spec/models/strategy_impact_spec.rb +90 -90
  274. data/spec/models/strategy_order_place_orders_inner_legs_inner_spec.rb +66 -66
  275. data/spec/models/strategy_order_place_orders_inner_spec.rb +282 -282
  276. data/spec/models/strategy_order_place_spec.rb +36 -36
  277. data/spec/models/strategy_order_record_order_type_spec.rb +24 -24
  278. data/spec/models/strategy_order_record_spec.rb +90 -90
  279. data/spec/models/strategy_order_record_status_spec.rb +24 -24
  280. data/spec/models/strategy_order_record_time_in_force_spec.rb +24 -24
  281. data/spec/models/strategy_quotes_greek_spec.rb +54 -54
  282. data/spec/models/strategy_quotes_spec.rb +60 -60
  283. data/spec/models/strategy_type_spec.rb +24 -24
  284. data/spec/models/sub_period_return_rate_spec.rb +42 -42
  285. data/spec/models/symbol_query_spec.rb +30 -30
  286. data/spec/models/symbol_spec.rb +66 -66
  287. data/spec/models/symbols_quotes_inner_spec.rb +60 -60
  288. data/spec/models/target_asset_spec.rb +60 -60
  289. data/spec/models/time_in_force_spec.rb +24 -24
  290. data/spec/models/trade_action_spec.rb +24 -24
  291. data/spec/models/trade_execution_status_action_spec.rb +24 -24
  292. data/spec/models/trade_execution_status_spec.rb +78 -78
  293. data/spec/models/trade_impact_spec.rb +54 -54
  294. data/spec/models/trade_spec.rb +72 -72
  295. data/spec/models/trading_cancel_user_account_order_request_spec.rb +30 -30
  296. data/spec/models/trading_place_oco_order_request_spec.rb +36 -36
  297. data/spec/models/transactions_status_spec.rb +36 -36
  298. data/spec/models/type_spec.rb +24 -24
  299. data/spec/models/underlying_symbol_spec.rb +66 -66
  300. data/spec/models/universal_activity_spec.rb +120 -120
  301. data/spec/models/universal_symbol_spec.rb +72 -72
  302. data/spec/models/universal_symbol_ticker_spec.rb +72 -72
  303. data/spec/models/us_exchange_spec.rb +78 -78
  304. data/spec/models/user_error_log_spec.rb +60 -60
  305. data/spec/models/user_i_dand_secret_spec.rb +36 -36
  306. data/spec/models/user_settings_spec.rb +84 -84
  307. data/spec/spec_helper.rb +6 -6
  308. metadata +119 -115
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -16,10 +16,6 @@ module SnapTrade
16
16
  class OptionsPosition
17
17
  attr_accessor :symbol
18
18
 
19
- attr_accessor :description
20
-
21
- attr_accessor :option_symbol
22
-
23
19
  # Trade Price if limit or stop limit order
24
20
  attr_accessor :price
25
21
 
@@ -30,16 +26,25 @@ module SnapTrade
30
26
  # Average purchase price for this position
31
27
  attr_accessor :average_purchase_price
32
28
 
29
+ attr_accessor :open_pnl
30
+
31
+ # Deprecated, use the units field for both fractional and integer units going forward
32
+ attr_accessor :fractional_units
33
+
34
+ # The book price of the asset
35
+ attr_accessor :book_price
36
+
33
37
  # Attribute mapping from ruby-style variable name to JSON key.
34
38
  def self.attribute_map
35
39
  {
36
40
  :'symbol' => :'symbol',
37
- :'description' => :'description',
38
- :'option_symbol' => :'option_symbol',
39
41
  :'price' => :'price',
40
42
  :'units' => :'units',
41
43
  :'currency' => :'currency',
42
- :'average_purchase_price' => :'average_purchase_price'
44
+ :'average_purchase_price' => :'average_purchase_price',
45
+ :'open_pnl' => :'open_pnl',
46
+ :'fractional_units' => :'fractional_units',
47
+ :'book_price' => :'book_price'
43
48
  }
44
49
  end
45
50
 
@@ -51,13 +56,14 @@ module SnapTrade
51
56
  # Attribute type mapping.
52
57
  def self.openapi_types
53
58
  {
54
- :'symbol' => :'String',
55
- :'description' => :'String',
56
- :'option_symbol' => :'OptionsSymbol',
59
+ :'symbol' => :'BrokerageSymbol',
57
60
  :'price' => :'Float',
58
61
  :'units' => :'Float',
59
- :'currency' => :'Currency',
60
- :'average_purchase_price' => :'Float'
62
+ :'currency' => :'OptionsPositionCurrency',
63
+ :'average_purchase_price' => :'Float',
64
+ :'open_pnl' => :'Float',
65
+ :'fractional_units' => :'Float',
66
+ :'book_price' => :'Float'
61
67
  }
62
68
  end
63
69
 
@@ -65,7 +71,11 @@ module SnapTrade
65
71
  def self.openapi_nullable
66
72
  Set.new([
67
73
  :'price',
68
- :'average_purchase_price'
74
+ :'currency',
75
+ :'average_purchase_price',
76
+ :'open_pnl',
77
+ :'fractional_units',
78
+ :'book_price'
69
79
  ])
70
80
  end
71
81
 
@@ -88,14 +98,6 @@ module SnapTrade
88
98
  self.symbol = attributes[:'symbol']
89
99
  end
90
100
 
91
- if attributes.key?(:'description')
92
- self.description = attributes[:'description']
93
- end
94
-
95
- if attributes.key?(:'option_symbol')
96
- self.option_symbol = attributes[:'option_symbol']
97
- end
98
-
99
101
  if attributes.key?(:'price')
100
102
  self.price = attributes[:'price']
101
103
  end
@@ -111,6 +113,18 @@ module SnapTrade
111
113
  if attributes.key?(:'average_purchase_price')
112
114
  self.average_purchase_price = attributes[:'average_purchase_price']
113
115
  end
116
+
117
+ if attributes.key?(:'open_pnl')
118
+ self.open_pnl = attributes[:'open_pnl']
119
+ end
120
+
121
+ if attributes.key?(:'fractional_units')
122
+ self.fractional_units = attributes[:'fractional_units']
123
+ end
124
+
125
+ if attributes.key?(:'book_price')
126
+ self.book_price = attributes[:'book_price']
127
+ end
114
128
  end
115
129
 
116
130
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -132,12 +146,13 @@ module SnapTrade
132
146
  return true if self.equal?(o)
133
147
  self.class == o.class &&
134
148
  symbol == o.symbol &&
135
- description == o.description &&
136
- option_symbol == o.option_symbol &&
137
149
  price == o.price &&
138
150
  units == o.units &&
139
151
  currency == o.currency &&
140
- average_purchase_price == o.average_purchase_price
152
+ average_purchase_price == o.average_purchase_price &&
153
+ open_pnl == o.open_pnl &&
154
+ fractional_units == o.fractional_units &&
155
+ book_price == o.book_price
141
156
  end
142
157
 
143
158
  # @see the `==` method
@@ -149,7 +164,7 @@ module SnapTrade
149
164
  # Calculates hash code according to all attributes.
150
165
  # @return [Integer] Hash code
151
166
  def hash
152
- [symbol, description, option_symbol, price, units, currency, average_purchase_price].hash
167
+ [symbol, price, units, currency, average_purchase_price, open_pnl, fractional_units, book_price].hash
153
168
  end
154
169
 
155
170
  # Builds the object from hash
@@ -0,0 +1,242 @@
1
+ =begin
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
+
9
+ =end
10
+
11
+ require 'date'
12
+ require 'time'
13
+
14
+ module SnapTrade
15
+ class OptionsPositionCurrency
16
+ attr_accessor :id
17
+
18
+ attr_accessor :code
19
+
20
+ attr_accessor :name
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'id' => :'id',
26
+ :'code' => :'code',
27
+ :'name' => :'name'
28
+ }
29
+ end
30
+
31
+ # Returns all the JSON keys this model knows about
32
+ def self.acceptable_attributes
33
+ attribute_map.values
34
+ end
35
+
36
+ # Attribute type mapping.
37
+ def self.openapi_types
38
+ {
39
+ :'id' => :'String',
40
+ :'code' => :'String',
41
+ :'name' => :'String'
42
+ }
43
+ end
44
+
45
+ # List of attributes with nullable: true
46
+ def self.openapi_nullable
47
+ Set.new([
48
+ ])
49
+ end
50
+
51
+ # List of class defined in allOf (OpenAPI v3)
52
+ def self.openapi_all_of
53
+ [
54
+ :'Currency'
55
+ ]
56
+ end
57
+
58
+ # Initializes the object
59
+ # @param [Hash] attributes Model attributes in the form of hash
60
+ def initialize(attributes = {})
61
+ if (!attributes.is_a?(Hash))
62
+ fail ArgumentError, "The input argument (attributes) must be a hash in `SnapTrade::OptionsPositionCurrency` initialize method"
63
+ end
64
+
65
+ # check to see if the attribute exists and convert string to symbol for hash key
66
+ attributes = attributes.each_with_object({}) { |(k, v), h|
67
+ if (!self.class.attribute_map.key?(k.to_sym))
68
+ fail ArgumentError, "`#{k}` is not a valid attribute in `SnapTrade::OptionsPositionCurrency`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
69
+ end
70
+ h[k.to_sym] = v
71
+ }
72
+
73
+ if attributes.key?(:'id')
74
+ self.id = attributes[:'id']
75
+ end
76
+
77
+ if attributes.key?(:'code')
78
+ self.code = attributes[:'code']
79
+ end
80
+
81
+ if attributes.key?(:'name')
82
+ self.name = attributes[:'name']
83
+ end
84
+ end
85
+
86
+ # Show invalid properties with the reasons. Usually used together with valid?
87
+ # @return Array for valid properties with the reasons
88
+ def list_invalid_properties
89
+ invalid_properties = Array.new
90
+ invalid_properties
91
+ end
92
+
93
+ # Check to see if the all the properties in the model are valid
94
+ # @return true if the model is valid
95
+ def valid?
96
+ true
97
+ end
98
+
99
+ # Checks equality by comparing each attribute.
100
+ # @param [Object] Object to be compared
101
+ def ==(o)
102
+ return true if self.equal?(o)
103
+ self.class == o.class &&
104
+ id == o.id &&
105
+ code == o.code &&
106
+ name == o.name
107
+ end
108
+
109
+ # @see the `==` method
110
+ # @param [Object] Object to be compared
111
+ def eql?(o)
112
+ self == o
113
+ end
114
+
115
+ # Calculates hash code according to all attributes.
116
+ # @return [Integer] Hash code
117
+ def hash
118
+ [id, code, name].hash
119
+ end
120
+
121
+ # Builds the object from hash
122
+ # @param [Hash] attributes Model attributes in the form of hash
123
+ # @return [Object] Returns the model itself
124
+ def self.build_from_hash(attributes)
125
+ new.build_from_hash(attributes)
126
+ end
127
+
128
+ # Builds the object from hash
129
+ # @param [Hash] attributes Model attributes in the form of hash
130
+ # @return [Object] Returns the model itself
131
+ def build_from_hash(attributes)
132
+ return nil unless attributes.is_a?(Hash)
133
+ attributes = attributes.transform_keys(&:to_sym)
134
+ self.class.openapi_types.each_pair do |key, type|
135
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
136
+ self.send("#{key}=", nil)
137
+ elsif type =~ /\AArray<(.*)>/i
138
+ # check to ensure the input is an array given that the attribute
139
+ # is documented as an array but the input is not
140
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
141
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
142
+ end
143
+ elsif !attributes[self.class.attribute_map[key]].nil?
144
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
145
+ end
146
+ end
147
+
148
+ self
149
+ end
150
+
151
+ # Deserializes the data based on type
152
+ # @param string type Data type
153
+ # @param string value Value to be deserialized
154
+ # @return [Object] Deserialized data
155
+ def _deserialize(type, value)
156
+ case type.to_sym
157
+ when :Time
158
+ Time.parse(value)
159
+ when :Date
160
+ Date.parse(value)
161
+ when :String
162
+ value.to_s
163
+ when :Integer
164
+ value.to_i
165
+ when :Float
166
+ value.to_f
167
+ when :Boolean
168
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
169
+ true
170
+ else
171
+ false
172
+ end
173
+ when :Object
174
+ # generic object (usually a Hash), return directly
175
+ value
176
+ when /\AArray<(?<inner_type>.+)>\z/
177
+ inner_type = Regexp.last_match[:inner_type]
178
+ value.map { |v| _deserialize(inner_type, v) }
179
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
180
+ k_type = Regexp.last_match[:k_type]
181
+ v_type = Regexp.last_match[:v_type]
182
+ {}.tap do |hash|
183
+ value.each do |k, v|
184
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
185
+ end
186
+ end
187
+ else # model
188
+ # models (e.g. Pet) or oneOf
189
+ klass = SnapTrade.const_get(type)
190
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
191
+ end
192
+ end
193
+
194
+ # Returns the string representation of the object
195
+ # @return [String] String presentation of the object
196
+ def to_s
197
+ to_hash.to_s
198
+ end
199
+
200
+ # to_body is an alias to to_hash (backward compatibility)
201
+ # @return [Hash] Returns the object in the form of hash
202
+ def to_body
203
+ to_hash
204
+ end
205
+
206
+ # Returns the object in the form of hash
207
+ # @return [Hash] Returns the object in the form of hash
208
+ def to_hash
209
+ hash = {}
210
+ self.class.attribute_map.each_pair do |attr, param|
211
+ value = self.send(attr)
212
+ if value.nil?
213
+ is_nullable = self.class.openapi_nullable.include?(attr)
214
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
215
+ end
216
+
217
+ hash[param] = _to_hash(value)
218
+ end
219
+ hash
220
+ end
221
+
222
+ # Outputs non-array value in the form of hash
223
+ # For object, use to_hash. Otherwise, just return the value
224
+ # @param [Object] value Any valid value
225
+ # @return [Hash] Returns the value in the form of hash
226
+ def _to_hash(value)
227
+ if value.is_a?(Array)
228
+ value.compact.map { |v| _to_hash(v) }
229
+ elsif value.is_a?(Hash)
230
+ {}.tap do |hash|
231
+ value.each { |k, v| hash[k] = _to_hash(v) }
232
+ end
233
+ elsif value.respond_to? :to_hash
234
+ value.to_hash
235
+ else
236
+ value
237
+ end
238
+ end
239
+
240
+ end
241
+
242
+ end
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -28,13 +28,7 @@ module SnapTrade
28
28
 
29
29
  attr_accessor :local_id
30
30
 
31
- attr_accessor :security_type
32
-
33
- attr_accessor :listing_exchange
34
-
35
- attr_accessor :is_quotable
36
-
37
- attr_accessor :is_tradable
31
+ attr_accessor :exchange_id
38
32
 
39
33
  # Attribute mapping from ruby-style variable name to JSON key.
40
34
  def self.attribute_map
@@ -46,10 +40,7 @@ module SnapTrade
46
40
  :'is_mini_option' => :'is_mini_option',
47
41
  :'underlying_symbol' => :'underlying_symbol',
48
42
  :'local_id' => :'local_id',
49
- :'security_type' => :'security_type',
50
- :'listing_exchange' => :'listing_exchange',
51
- :'is_quotable' => :'is_quotable',
52
- :'is_tradable' => :'is_tradable'
43
+ :'exchange_id' => :'exchange_id'
53
44
  }
54
45
  end
55
46
 
@@ -68,18 +59,13 @@ module SnapTrade
68
59
  :'is_mini_option' => :'Boolean',
69
60
  :'underlying_symbol' => :'UnderlyingSymbol',
70
61
  :'local_id' => :'String',
71
- :'security_type' => :'Object',
72
- :'listing_exchange' => :'Object',
73
- :'is_quotable' => :'Boolean',
74
- :'is_tradable' => :'Boolean'
62
+ :'exchange_id' => :'String'
75
63
  }
76
64
  end
77
65
 
78
66
  # List of attributes with nullable: true
79
67
  def self.openapi_nullable
80
68
  Set.new([
81
- :'security_type',
82
- :'listing_exchange',
83
69
  ])
84
70
  end
85
71
 
@@ -126,20 +112,8 @@ module SnapTrade
126
112
  self.local_id = attributes[:'local_id']
127
113
  end
128
114
 
129
- if attributes.key?(:'security_type')
130
- self.security_type = attributes[:'security_type']
131
- end
132
-
133
- if attributes.key?(:'listing_exchange')
134
- self.listing_exchange = attributes[:'listing_exchange']
135
- end
136
-
137
- if attributes.key?(:'is_quotable')
138
- self.is_quotable = attributes[:'is_quotable']
139
- end
140
-
141
- if attributes.key?(:'is_tradable')
142
- self.is_tradable = attributes[:'is_tradable']
115
+ if attributes.key?(:'exchange_id')
116
+ self.exchange_id = attributes[:'exchange_id']
143
117
  end
144
118
  end
145
119
 
@@ -168,10 +142,7 @@ module SnapTrade
168
142
  is_mini_option == o.is_mini_option &&
169
143
  underlying_symbol == o.underlying_symbol &&
170
144
  local_id == o.local_id &&
171
- security_type == o.security_type &&
172
- listing_exchange == o.listing_exchange &&
173
- is_quotable == o.is_quotable &&
174
- is_tradable == o.is_tradable
145
+ exchange_id == o.exchange_id
175
146
  end
176
147
 
177
148
  # @see the `==` method
@@ -183,7 +154,7 @@ module SnapTrade
183
154
  # Calculates hash code according to all attributes.
184
155
  # @return [Integer] Hash code
185
156
  def hash
186
- [id, ticker, strike_price, expiration_date, is_mini_option, underlying_symbol, local_id, security_type, listing_exchange, is_quotable, is_tradable].hash
157
+ [id, ticker, strike_price, expiration_date, is_mini_option, underlying_symbol, local_id, exchange_id].hash
187
158
  end
188
159
 
189
160
  # Builds the object from hash
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10
 
@@ -1,10 +1,10 @@
1
1
  =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
8
 
9
9
  =end
10
10