snaptrade 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (422) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +10 -0
  3. data/Gemfile.lock +84 -0
  4. data/README.md +254 -0
  5. data/Rakefile +10 -0
  6. data/docs/APIStatusApi.md +57 -0
  7. data/docs/Account.md +36 -0
  8. data/docs/AccountHoldings.md +24 -0
  9. data/docs/AccountHoldingsAccount.md +26 -0
  10. data/docs/AccountInformationApi.md +535 -0
  11. data/docs/AccountOrderRecord.md +52 -0
  12. data/docs/AccountOrderRecordStatus.md +15 -0
  13. data/docs/AccountSimple.md +24 -0
  14. data/docs/AccountSyncStatus.md +18 -0
  15. data/docs/Action.md +15 -0
  16. data/docs/AuthType.md +15 -0
  17. data/docs/AuthenticationApi.md +314 -0
  18. data/docs/AuthenticationLoginSnapTradeUser200Response.md +49 -0
  19. data/docs/Balance.md +20 -0
  20. data/docs/Brokerage.md +52 -0
  21. data/docs/BrokerageAuthorization.md +34 -0
  22. data/docs/BrokerageAuthorizationType.md +18 -0
  23. data/docs/BrokerageAuthorizationTypeReadOnly.md +24 -0
  24. data/docs/BrokerageAuthorizationTypeReadOnlyBrokerage.md +22 -0
  25. data/docs/BrokerageAuthorizationTypeReadOnlyType.md +15 -0
  26. data/docs/BrokerageAuthorizationTypeType.md +15 -0
  27. data/docs/BrokerageSymbol.md +26 -0
  28. data/docs/BrokerageType.md +20 -0
  29. data/docs/CalculatedTrade.md +20 -0
  30. data/docs/CashRestriction.md +26 -0
  31. data/docs/ConnectionType.md +15 -0
  32. data/docs/ConnectionsApi.md +265 -0
  33. data/docs/ConnectionsSessionEvents200ResponseInner.md +30 -0
  34. data/docs/Currency.md +22 -0
  35. data/docs/DeleteUserResponse.md +20 -0
  36. data/docs/DividendAtDate.md +22 -0
  37. data/docs/EncryptedResponse.md +20 -0
  38. data/docs/EncryptedResponseEncryptedMessageData.md +22 -0
  39. data/docs/ErrorLogsApi.md +68 -0
  40. data/docs/Exchange.md +32 -0
  41. data/docs/ExchangeRatePairs.md +22 -0
  42. data/docs/ExcludedAsset.md +18 -0
  43. data/docs/JWT.md +18 -0
  44. data/docs/LoginRedirectURI.md +20 -0
  45. data/docs/ManualTrade.md +32 -0
  46. data/docs/ManualTradeAndImpact.md +22 -0
  47. data/docs/ManualTradeBalance.md +22 -0
  48. data/docs/ManualTradeForm.md +32 -0
  49. data/docs/ManualTradeSymbol.md +28 -0
  50. data/docs/Model400FailedRequestResponse.md +20 -0
  51. data/docs/Model401FailedRequestResponse.md +20 -0
  52. data/docs/Model403FailedRequestResponse.md +20 -0
  53. data/docs/Model404FailedRequestResponse.md +20 -0
  54. data/docs/ModelAssetClass.md +20 -0
  55. data/docs/ModelAssetClassDetails.md +20 -0
  56. data/docs/ModelAssetClassTarget.md +18 -0
  57. data/docs/ModelPortfolio.md +22 -0
  58. data/docs/ModelPortfolioAssetClass.md +20 -0
  59. data/docs/ModelPortfolioDetails.md +22 -0
  60. data/docs/ModelPortfolioSecurity.md +20 -0
  61. data/docs/ModelType.md +15 -0
  62. data/docs/MonthlyDividends.md +20 -0
  63. data/docs/NetContributions.md +22 -0
  64. data/docs/NetDividend.md +22 -0
  65. data/docs/OptionChainInner.md +26 -0
  66. data/docs/OptionChainInnerChainPerRootInner.md +22 -0
  67. data/docs/OptionChainInnerChainPerRootInnerChainPerStrikePriceInner.md +22 -0
  68. data/docs/OptionLeg.md +22 -0
  69. data/docs/OptionLegAction.md +15 -0
  70. data/docs/OptionStrategy.md +26 -0
  71. data/docs/OptionStrategyLegsInner.md +24 -0
  72. data/docs/OptionsApi.md +390 -0
  73. data/docs/OptionsGetOptionStrategyRequest.md +22 -0
  74. data/docs/OptionsHoldings.md +28 -0
  75. data/docs/OptionsPlaceOptionStrategyRequest.md +22 -0
  76. data/docs/OptionsPosition.md +30 -0
  77. data/docs/OptionsSymbol.md +38 -0
  78. data/docs/OrderStrategyExecuteBodyOrderType.md +15 -0
  79. data/docs/OrderStrategyExecuteBodyTimeInForce.md +15 -0
  80. data/docs/OrderType.md +15 -0
  81. data/docs/PartnerData.md +40 -0
  82. data/docs/PastValue.md +22 -0
  83. data/docs/PerformanceCustom.md +54 -0
  84. data/docs/PortfolioGroup.md +20 -0
  85. data/docs/PortfolioGroupInfo.md +38 -0
  86. data/docs/PortfolioGroupPosition.md +22 -0
  87. data/docs/PortfolioGroupSettings.md +26 -0
  88. data/docs/PortfolioManagementApi.md +2014 -0
  89. data/docs/Position.md +28 -0
  90. data/docs/PositionSymbol.md +28 -0
  91. data/docs/RedirectTokenandPin.md +20 -0
  92. data/docs/ReferenceDataApi.md +595 -0
  93. data/docs/SecurityType.md +24 -0
  94. data/docs/SessionEvent.md +30 -0
  95. data/docs/SessionEventType.md +15 -0
  96. data/docs/SnapTradeAPIDisclaimerAcceptStatus.md +20 -0
  97. data/docs/SnapTradeHoldingsAccount.md +32 -0
  98. data/docs/SnapTradeHoldingsAccountAccountId.md +34 -0
  99. data/docs/SnapTradeHoldingsTotalValue.md +20 -0
  100. data/docs/SnapTradeLoginUserRequestBody.md +26 -0
  101. data/docs/SnapTradeRegisterUserRequestBody.md +20 -0
  102. data/docs/State.md +15 -0
  103. data/docs/Status.md +22 -0
  104. data/docs/StrategyImpact.md +38 -0
  105. data/docs/StrategyImpactLegsInner.md +30 -0
  106. data/docs/StrategyOrderPlace.md +20 -0
  107. data/docs/StrategyOrderPlaceOrdersInner.md +102 -0
  108. data/docs/StrategyOrderPlaceOrdersInnerLegsInner.md +30 -0
  109. data/docs/StrategyOrderRecord.md +38 -0
  110. data/docs/StrategyOrderRecordOrderType.md +15 -0
  111. data/docs/StrategyOrderRecordStatus.md +15 -0
  112. data/docs/StrategyOrderRecordTimeInForce.md +15 -0
  113. data/docs/StrategyQuotes.md +28 -0
  114. data/docs/StrategyQuotesGreek.md +26 -0
  115. data/docs/StrategyType.md +15 -0
  116. data/docs/SubPeriodReturnRate.md +22 -0
  117. data/docs/Symbol.md +30 -0
  118. data/docs/SymbolQuery.md +18 -0
  119. data/docs/SymbolsQuotes.md +28 -0
  120. data/docs/TargetAsset.md +28 -0
  121. data/docs/TimeInForce.md +15 -0
  122. data/docs/Trade.md +32 -0
  123. data/docs/TradeAction.md +15 -0
  124. data/docs/TradeExecutionStatus.md +34 -0
  125. data/docs/TradeExecutionStatusAction.md +15 -0
  126. data/docs/TradeImpact.md +26 -0
  127. data/docs/TradingApi.md +799 -0
  128. data/docs/TradingCancelUserAccountOrderRequest.md +18 -0
  129. data/docs/TradingPlaceOCOOrderRequest.md +20 -0
  130. data/docs/TransactionsAndReportingApi.md +183 -0
  131. data/docs/TransactionsStatus.md +20 -0
  132. data/docs/Type.md +15 -0
  133. data/docs/USExchange.md +34 -0
  134. data/docs/UnderlyingSymbol.md +30 -0
  135. data/docs/UniversalActivity.md +46 -0
  136. data/docs/UniversalSymbol.md +32 -0
  137. data/docs/UniversalSymbolTicker.md +32 -0
  138. data/docs/UserErrorLog.md +28 -0
  139. data/docs/UserIDandSecret.md +20 -0
  140. data/docs/UserSettings.md +36 -0
  141. data/lib/snaptrade/api/account_information_api.rb +801 -0
  142. data/lib/snaptrade/api/api_status_api.rb +98 -0
  143. data/lib/snaptrade/api/authentication_api.rb +481 -0
  144. data/lib/snaptrade/api/connections_api.rb +398 -0
  145. data/lib/snaptrade/api/error_logs_api.rb +112 -0
  146. data/lib/snaptrade/api/options_api.rb +591 -0
  147. data/lib/snaptrade/api/portfolio_management_api.rb +2791 -0
  148. data/lib/snaptrade/api/reference_data_api.rb +894 -0
  149. data/lib/snaptrade/api/trading_api.rb +1150 -0
  150. data/lib/snaptrade/api/transactions_and_reporting_api.rb +283 -0
  151. data/lib/snaptrade/api_client.rb +427 -0
  152. data/lib/snaptrade/api_client_custom.rb +32 -0
  153. data/lib/snaptrade/api_error.rb +55 -0
  154. data/lib/snaptrade/configuration.rb +374 -0
  155. data/lib/snaptrade/models/account.rb +303 -0
  156. data/lib/snaptrade/models/account_holdings.rb +249 -0
  157. data/lib/snaptrade/models/account_holdings_account.rb +260 -0
  158. data/lib/snaptrade/models/account_order_record.rb +382 -0
  159. data/lib/snaptrade/models/account_order_record_status.rb +56 -0
  160. data/lib/snaptrade/models/account_simple.rb +245 -0
  161. data/lib/snaptrade/models/account_sync_status.rb +218 -0
  162. data/lib/snaptrade/models/action.rb +38 -0
  163. data/lib/snaptrade/models/auth_type.rb +40 -0
  164. data/lib/snaptrade/models/authentication_login_snap_trade_user200_response.rb +103 -0
  165. data/lib/snaptrade/models/balance.rb +228 -0
  166. data/lib/snaptrade/models/brokerage.rb +377 -0
  167. data/lib/snaptrade/models/brokerage_authorization.rb +297 -0
  168. data/lib/snaptrade/models/brokerage_authorization_type.rb +217 -0
  169. data/lib/snaptrade/models/brokerage_authorization_type_read_only.rb +244 -0
  170. data/lib/snaptrade/models/brokerage_authorization_type_read_only_brokerage.rb +237 -0
  171. data/lib/snaptrade/models/brokerage_authorization_type_read_only_type.rb +38 -0
  172. data/lib/snaptrade/models/brokerage_authorization_type_type.rb +38 -0
  173. data/lib/snaptrade/models/brokerage_symbol.rb +255 -0
  174. data/lib/snaptrade/models/brokerage_type.rb +227 -0
  175. data/lib/snaptrade/models/calculated_trade.rb +229 -0
  176. data/lib/snaptrade/models/cash_restriction.rb +254 -0
  177. data/lib/snaptrade/models/connection_type.rb +38 -0
  178. data/lib/snaptrade/models/connections_session_events200_response_inner.rb +293 -0
  179. data/lib/snaptrade/models/currency.rb +236 -0
  180. data/lib/snaptrade/models/delete_user_response.rb +229 -0
  181. data/lib/snaptrade/models/dividend_at_date.rb +240 -0
  182. data/lib/snaptrade/models/encrypted_response.rb +227 -0
  183. data/lib/snaptrade/models/encrypted_response_encrypted_message_data.rb +235 -0
  184. data/lib/snaptrade/models/exchange.rb +282 -0
  185. data/lib/snaptrade/models/exchange_rate_pairs.rb +236 -0
  186. data/lib/snaptrade/models/excluded_asset.rb +218 -0
  187. data/lib/snaptrade/models/jwt.rb +218 -0
  188. data/lib/snaptrade/models/login_redirect_uri.rb +228 -0
  189. data/lib/snaptrade/models/manual_trade.rb +283 -0
  190. data/lib/snaptrade/models/manual_trade_and_impact.rb +238 -0
  191. data/lib/snaptrade/models/manual_trade_balance.rb +238 -0
  192. data/lib/snaptrade/models/manual_trade_form.rb +285 -0
  193. data/lib/snaptrade/models/manual_trade_symbol.rb +264 -0
  194. data/lib/snaptrade/models/model400_failed_request_response.rb +229 -0
  195. data/lib/snaptrade/models/model401_failed_request_response.rb +229 -0
  196. data/lib/snaptrade/models/model403_failed_request_response.rb +229 -0
  197. data/lib/snaptrade/models/model404_failed_request_response.rb +229 -0
  198. data/lib/snaptrade/models/model_asset_class.rb +226 -0
  199. data/lib/snaptrade/models/model_asset_class_details.rb +228 -0
  200. data/lib/snaptrade/models/model_asset_class_target.rb +217 -0
  201. data/lib/snaptrade/models/model_portfolio.rb +237 -0
  202. data/lib/snaptrade/models/model_portfolio_asset_class.rb +250 -0
  203. data/lib/snaptrade/models/model_portfolio_details.rb +239 -0
  204. data/lib/snaptrade/models/model_portfolio_security.rb +250 -0
  205. data/lib/snaptrade/models/model_type.rb +39 -0
  206. data/lib/snaptrade/models/monthly_dividends.rb +229 -0
  207. data/lib/snaptrade/models/net_contributions.rb +237 -0
  208. data/lib/snaptrade/models/net_dividend.rb +237 -0
  209. data/lib/snaptrade/models/option_chain_inner.rb +255 -0
  210. data/lib/snaptrade/models/option_chain_inner_chain_per_root_inner.rb +237 -0
  211. data/lib/snaptrade/models/option_chain_inner_chain_per_root_inner_chain_per_strike_price_inner.rb +238 -0
  212. data/lib/snaptrade/models/option_leg.rb +237 -0
  213. data/lib/snaptrade/models/option_leg_action.rb +40 -0
  214. data/lib/snaptrade/models/option_strategy.rb +255 -0
  215. data/lib/snaptrade/models/option_strategy_legs_inner.rb +244 -0
  216. data/lib/snaptrade/models/options_get_option_strategy_request.rb +252 -0
  217. data/lib/snaptrade/models/options_holdings.rb +267 -0
  218. data/lib/snaptrade/models/options_place_option_strategy_request.rb +251 -0
  219. data/lib/snaptrade/models/options_position.rb +275 -0
  220. data/lib/snaptrade/models/options_symbol.rb +310 -0
  221. data/lib/snaptrade/models/order_strategy_execute_body_order_type.rb +40 -0
  222. data/lib/snaptrade/models/order_strategy_execute_body_time_in_force.rb +38 -0
  223. data/lib/snaptrade/models/order_type.rb +40 -0
  224. data/lib/snaptrade/models/partner_data.rb +331 -0
  225. data/lib/snaptrade/models/past_value.rb +236 -0
  226. data/lib/snaptrade/models/performance_custom.rb +416 -0
  227. data/lib/snaptrade/models/portfolio_group.rb +226 -0
  228. data/lib/snaptrade/models/portfolio_group_info.rb +326 -0
  229. data/lib/snaptrade/models/portfolio_group_position.rb +238 -0
  230. data/lib/snaptrade/models/portfolio_group_settings.rb +277 -0
  231. data/lib/snaptrade/models/position.rb +271 -0
  232. data/lib/snaptrade/models/position_symbol.rb +264 -0
  233. data/lib/snaptrade/models/redirect_tokenand_pin.rb +227 -0
  234. data/lib/snaptrade/models/security_type.rb +245 -0
  235. data/lib/snaptrade/models/session_event.rb +274 -0
  236. data/lib/snaptrade/models/session_event_type.rb +43 -0
  237. data/lib/snaptrade/models/snap_trade_api_disclaimer_accept_status.rb +227 -0
  238. data/lib/snaptrade/models/snap_trade_holdings_account.rb +284 -0
  239. data/lib/snaptrade/models/snap_trade_holdings_account_account_id.rb +296 -0
  240. data/lib/snaptrade/models/snap_trade_holdings_total_value.rb +227 -0
  241. data/lib/snaptrade/models/snap_trade_login_user_request_body.rb +254 -0
  242. data/lib/snaptrade/models/snap_trade_register_user_request_body.rb +229 -0
  243. data/lib/snaptrade/models/state.rb +41 -0
  244. data/lib/snaptrade/models/status.rb +236 -0
  245. data/lib/snaptrade/models/strategy_impact.rb +310 -0
  246. data/lib/snaptrade/models/strategy_impact_legs_inner.rb +271 -0
  247. data/lib/snaptrade/models/strategy_order_place.rb +229 -0
  248. data/lib/snaptrade/models/strategy_order_place_orders_inner.rb +597 -0
  249. data/lib/snaptrade/models/strategy_order_place_orders_inner_legs_inner.rb +271 -0
  250. data/lib/snaptrade/models/strategy_order_record.rb +312 -0
  251. data/lib/snaptrade/models/strategy_order_record_order_type.rb +40 -0
  252. data/lib/snaptrade/models/strategy_order_record_status.rb +55 -0
  253. data/lib/snaptrade/models/strategy_order_record_time_in_force.rb +38 -0
  254. data/lib/snaptrade/models/strategy_quotes.rb +265 -0
  255. data/lib/snaptrade/models/strategy_quotes_greek.rb +253 -0
  256. data/lib/snaptrade/models/strategy_type.rb +37 -0
  257. data/lib/snaptrade/models/sub_period_return_rate.rb +239 -0
  258. data/lib/snaptrade/models/symbol.rb +272 -0
  259. data/lib/snaptrade/models/symbol_query.rb +218 -0
  260. data/lib/snaptrade/models/symbols_quotes.rb +263 -0
  261. data/lib/snaptrade/models/target_asset.rb +290 -0
  262. data/lib/snaptrade/models/time_in_force.rb +39 -0
  263. data/lib/snaptrade/models/trade.rb +281 -0
  264. data/lib/snaptrade/models/trade_action.rb +38 -0
  265. data/lib/snaptrade/models/trade_execution_status.rb +296 -0
  266. data/lib/snaptrade/models/trade_execution_status_action.rb +38 -0
  267. data/lib/snaptrade/models/trade_impact.rb +257 -0
  268. data/lib/snaptrade/models/trading_cancel_user_account_order_request.rb +217 -0
  269. data/lib/snaptrade/models/trading_place_oco_order_request.rb +230 -0
  270. data/lib/snaptrade/models/transactions_status.rb +229 -0
  271. data/lib/snaptrade/models/type.rb +38 -0
  272. data/lib/snaptrade/models/underlying_symbol.rb +275 -0
  273. data/lib/snaptrade/models/universal_activity.rb +349 -0
  274. data/lib/snaptrade/models/universal_symbol.rb +284 -0
  275. data/lib/snaptrade/models/universal_symbol_ticker.rb +283 -0
  276. data/lib/snaptrade/models/us_exchange.rb +291 -0
  277. data/lib/snaptrade/models/user_error_log.rb +263 -0
  278. data/lib/snaptrade/models/user_i_dand_secret.rb +229 -0
  279. data/lib/snaptrade/models/user_settings.rb +299 -0
  280. data/lib/snaptrade/version.rb +13 -0
  281. data/lib/snaptrade.rb +214 -0
  282. data/snaptrade.gemspec +41 -0
  283. data/spec/api/account_information_api_spec.rb +135 -0
  284. data/spec/api/api_status_api_spec.rb +42 -0
  285. data/spec/api/authentication_api_spec.rb +88 -0
  286. data/spec/api/connections_api_spec.rb +82 -0
  287. data/spec/api/error_logs_api_spec.rb +43 -0
  288. data/spec/api/options_api_spec.rb +101 -0
  289. data/spec/api/portfolio_management_api_spec.rb +395 -0
  290. data/spec/api/reference_data_api_spec.rb +150 -0
  291. data/spec/api/trading_api_spec.rb +163 -0
  292. data/spec/api/transactions_and_reporting_api_spec.rb +67 -0
  293. data/spec/api_client_spec.rb +193 -0
  294. data/spec/configuration_spec.rb +40 -0
  295. data/spec/getting_started_spec.rb +144 -0
  296. data/spec/models/account_holdings_account_spec.rb +54 -0
  297. data/spec/models/account_holdings_spec.rb +48 -0
  298. data/spec/models/account_order_record_spec.rb +132 -0
  299. data/spec/models/account_order_record_status_spec.rb +24 -0
  300. data/spec/models/account_simple_spec.rb +48 -0
  301. data/spec/models/account_spec.rb +84 -0
  302. data/spec/models/account_sync_status_spec.rb +30 -0
  303. data/spec/models/action_spec.rb +24 -0
  304. data/spec/models/auth_type_spec.rb +24 -0
  305. data/spec/models/authentication_login_snap_trade_user200_response_spec.rb +27 -0
  306. data/spec/models/balance_spec.rb +36 -0
  307. data/spec/models/brokerage_authorization_spec.rb +78 -0
  308. data/spec/models/brokerage_authorization_type_read_only_brokerage_spec.rb +42 -0
  309. data/spec/models/brokerage_authorization_type_read_only_spec.rb +48 -0
  310. data/spec/models/brokerage_authorization_type_read_only_type_spec.rb +24 -0
  311. data/spec/models/brokerage_authorization_type_spec.rb +30 -0
  312. data/spec/models/brokerage_authorization_type_type_spec.rb +24 -0
  313. data/spec/models/brokerage_spec.rb +132 -0
  314. data/spec/models/brokerage_symbol_spec.rb +54 -0
  315. data/spec/models/brokerage_type_spec.rb +36 -0
  316. data/spec/models/calculated_trade_spec.rb +36 -0
  317. data/spec/models/cash_restriction_spec.rb +54 -0
  318. data/spec/models/connection_type_spec.rb +24 -0
  319. data/spec/models/connections_session_events200_response_inner_spec.rb +66 -0
  320. data/spec/models/currency_spec.rb +42 -0
  321. data/spec/models/delete_user_response_spec.rb +36 -0
  322. data/spec/models/dividend_at_date_spec.rb +42 -0
  323. data/spec/models/encrypted_response_encrypted_message_data_spec.rb +42 -0
  324. data/spec/models/encrypted_response_spec.rb +36 -0
  325. data/spec/models/exchange_rate_pairs_spec.rb +42 -0
  326. data/spec/models/exchange_spec.rb +72 -0
  327. data/spec/models/excluded_asset_spec.rb +30 -0
  328. data/spec/models/jwt_spec.rb +30 -0
  329. data/spec/models/login_redirect_uri_spec.rb +36 -0
  330. data/spec/models/manual_trade_and_impact_spec.rb +42 -0
  331. data/spec/models/manual_trade_balance_spec.rb +42 -0
  332. data/spec/models/manual_trade_form_spec.rb +72 -0
  333. data/spec/models/manual_trade_spec.rb +72 -0
  334. data/spec/models/manual_trade_symbol_spec.rb +60 -0
  335. data/spec/models/model400_failed_request_response_spec.rb +36 -0
  336. data/spec/models/model401_failed_request_response_spec.rb +36 -0
  337. data/spec/models/model403_failed_request_response_spec.rb +36 -0
  338. data/spec/models/model404_failed_request_response_spec.rb +36 -0
  339. data/spec/models/model_asset_class_details_spec.rb +36 -0
  340. data/spec/models/model_asset_class_spec.rb +36 -0
  341. data/spec/models/model_asset_class_target_spec.rb +30 -0
  342. data/spec/models/model_portfolio_asset_class_spec.rb +36 -0
  343. data/spec/models/model_portfolio_details_spec.rb +42 -0
  344. data/spec/models/model_portfolio_security_spec.rb +36 -0
  345. data/spec/models/model_portfolio_spec.rb +42 -0
  346. data/spec/models/model_type_spec.rb +24 -0
  347. data/spec/models/monthly_dividends_spec.rb +36 -0
  348. data/spec/models/net_contributions_spec.rb +42 -0
  349. data/spec/models/net_dividend_spec.rb +42 -0
  350. data/spec/models/option_chain_inner_chain_per_root_inner_chain_per_strike_price_inner_spec.rb +42 -0
  351. data/spec/models/option_chain_inner_chain_per_root_inner_spec.rb +42 -0
  352. data/spec/models/option_chain_inner_spec.rb +54 -0
  353. data/spec/models/option_leg_action_spec.rb +24 -0
  354. data/spec/models/option_leg_spec.rb +42 -0
  355. data/spec/models/option_strategy_legs_inner_spec.rb +48 -0
  356. data/spec/models/option_strategy_spec.rb +54 -0
  357. data/spec/models/options_get_option_strategy_request_spec.rb +42 -0
  358. data/spec/models/options_holdings_spec.rb +60 -0
  359. data/spec/models/options_place_option_strategy_request_spec.rb +42 -0
  360. data/spec/models/options_position_spec.rb +66 -0
  361. data/spec/models/options_symbol_spec.rb +90 -0
  362. data/spec/models/order_strategy_execute_body_order_type_spec.rb +24 -0
  363. data/spec/models/order_strategy_execute_body_time_in_force_spec.rb +24 -0
  364. data/spec/models/order_type_spec.rb +24 -0
  365. data/spec/models/partner_data_spec.rb +96 -0
  366. data/spec/models/past_value_spec.rb +42 -0
  367. data/spec/models/performance_custom_spec.rb +138 -0
  368. data/spec/models/portfolio_group_info_spec.rb +90 -0
  369. data/spec/models/portfolio_group_position_spec.rb +42 -0
  370. data/spec/models/portfolio_group_settings_spec.rb +54 -0
  371. data/spec/models/portfolio_group_spec.rb +36 -0
  372. data/spec/models/position_spec.rb +60 -0
  373. data/spec/models/position_symbol_spec.rb +60 -0
  374. data/spec/models/redirect_tokenand_pin_spec.rb +36 -0
  375. data/spec/models/security_type_spec.rb +48 -0
  376. data/spec/models/session_event_spec.rb +66 -0
  377. data/spec/models/session_event_type_spec.rb +24 -0
  378. data/spec/models/snap_trade_api_disclaimer_accept_status_spec.rb +36 -0
  379. data/spec/models/snap_trade_holdings_account_account_id_spec.rb +78 -0
  380. data/spec/models/snap_trade_holdings_account_spec.rb +72 -0
  381. data/spec/models/snap_trade_holdings_total_value_spec.rb +36 -0
  382. data/spec/models/snap_trade_login_user_request_body_spec.rb +54 -0
  383. data/spec/models/snap_trade_register_user_request_body_spec.rb +36 -0
  384. data/spec/models/state_spec.rb +24 -0
  385. data/spec/models/status_spec.rb +42 -0
  386. data/spec/models/strategy_impact_legs_inner_spec.rb +66 -0
  387. data/spec/models/strategy_impact_spec.rb +90 -0
  388. data/spec/models/strategy_order_place_orders_inner_legs_inner_spec.rb +66 -0
  389. data/spec/models/strategy_order_place_orders_inner_spec.rb +282 -0
  390. data/spec/models/strategy_order_place_spec.rb +36 -0
  391. data/spec/models/strategy_order_record_order_type_spec.rb +24 -0
  392. data/spec/models/strategy_order_record_spec.rb +90 -0
  393. data/spec/models/strategy_order_record_status_spec.rb +24 -0
  394. data/spec/models/strategy_order_record_time_in_force_spec.rb +24 -0
  395. data/spec/models/strategy_quotes_greek_spec.rb +54 -0
  396. data/spec/models/strategy_quotes_spec.rb +60 -0
  397. data/spec/models/strategy_type_spec.rb +24 -0
  398. data/spec/models/sub_period_return_rate_spec.rb +42 -0
  399. data/spec/models/symbol_query_spec.rb +30 -0
  400. data/spec/models/symbol_spec.rb +66 -0
  401. data/spec/models/symbols_quotes_spec.rb +60 -0
  402. data/spec/models/target_asset_spec.rb +60 -0
  403. data/spec/models/time_in_force_spec.rb +24 -0
  404. data/spec/models/trade_action_spec.rb +24 -0
  405. data/spec/models/trade_execution_status_action_spec.rb +24 -0
  406. data/spec/models/trade_execution_status_spec.rb +78 -0
  407. data/spec/models/trade_impact_spec.rb +54 -0
  408. data/spec/models/trade_spec.rb +72 -0
  409. data/spec/models/trading_cancel_user_account_order_request_spec.rb +30 -0
  410. data/spec/models/trading_place_oco_order_request_spec.rb +36 -0
  411. data/spec/models/transactions_status_spec.rb +36 -0
  412. data/spec/models/type_spec.rb +24 -0
  413. data/spec/models/underlying_symbol_spec.rb +66 -0
  414. data/spec/models/universal_activity_spec.rb +114 -0
  415. data/spec/models/universal_symbol_spec.rb +72 -0
  416. data/spec/models/universal_symbol_ticker_spec.rb +72 -0
  417. data/spec/models/us_exchange_spec.rb +78 -0
  418. data/spec/models/user_error_log_spec.rb +60 -0
  419. data/spec/models/user_i_dand_secret_spec.rb +36 -0
  420. data/spec/models/user_settings_spec.rb +84 -0
  421. data/spec/spec_helper.rb +109 -0
  422. metadata +664 -0
@@ -0,0 +1,390 @@
1
+ # SnapTrade::OptionsApi
2
+
3
+ All URIs are relative to *https://api.snaptrade.com/api/v1*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**get_option_strategy**](OptionsApi.md#get_option_strategy) | **POST** /accounts/{accountId}/optionStrategy | Creates an option strategy object that will be used to place an option strategy order |
8
+ | [**get_options_chain**](OptionsApi.md#get_options_chain) | **GET** /accounts/{accountId}/optionsChain | Get the options chain |
9
+ | [**get_options_strategy_quote**](OptionsApi.md#get_options_strategy_quote) | **GET** /accounts/{accountId}/optionStrategy/{optionStrategyId} | Get latest market data of option strategy |
10
+ | [**list_option_holdings**](OptionsApi.md#list_option_holdings) | **GET** /accounts/{accountId}/options | Get the options holdings in the account |
11
+ | [**place_option_strategy**](OptionsApi.md#place_option_strategy) | **POST** /accounts/{accountId}/optionStrategy/{optionStrategyId}/execute | Place an option strategy order on the brokerage |
12
+
13
+ ## get_option_strategy
14
+
15
+ Creates an option strategy object that will be used to place an option strategy order
16
+
17
+ ### Example
18
+
19
+ ```ruby
20
+ require 'snaptrade'
21
+
22
+ SnapTrade.client_id = "YOUR_CLIENT_ID"
23
+ SnapTrade.consumer_key = "YOUR_CONSUMER_KEY"
24
+
25
+ underlying_symbol_id = "2bcd7cc3-e922-4976-bce1-9858296801c3"
26
+ legs = [
27
+ {
28
+ "action" => "BUY_TO_OPEN",
29
+ "option_symbol_id" => "SPY220819P00200000",
30
+ "quantity" => 1,
31
+ }
32
+ ]
33
+ strategy_type = "CUSTOM"
34
+ user_id = "John.doe@snaptrade.com"
35
+ user_secret = "USERSECRET123"
36
+ account_id = "accountId_example"
37
+
38
+ begin
39
+ # Creates an option strategy object that will be used to place an option strategy order
40
+ result = SnapTrade::Options.get_option_strategy(
41
+ underlying_symbol_id: underlying_symbol_id,
42
+ legs: legs,
43
+ strategy_type: strategy_type,
44
+ user_id: user_id,
45
+ user_secret: user_secret,
46
+ account_id: account_id,
47
+ )
48
+ p result
49
+ rescue SnapTrade::ApiError => e
50
+ puts "Exception when calling SnapTrade::Options.get_option_strategy: #{e}"
51
+ end
52
+ ```
53
+
54
+ #### Using the get_option_strategy_with_http_info variant
55
+
56
+ This returns an Array which contains the response data, status code and headers.
57
+
58
+ ```ruby
59
+ underlying_symbol_id = "2bcd7cc3-e922-4976-bce1-9858296801c3"
60
+ legs = [
61
+ {
62
+ "action" => "BUY_TO_OPEN",
63
+ "option_symbol_id" => "SPY220819P00200000",
64
+ "quantity" => 1,
65
+ }
66
+ ]
67
+ strategy_type = "CUSTOM"
68
+ user_id = "John.doe@snaptrade.com"
69
+ user_secret = "USERSECRET123"
70
+ account_id = "accountId_example"
71
+
72
+ begin
73
+ # Creates an option strategy object that will be used to place an option strategy order
74
+ data, status_code, headers, response = SnapTrade::Options.get_option_strategy_with_http_info(
75
+ underlying_symbol_id: underlying_symbol_id,
76
+ legs: legs,
77
+ strategy_type: strategy_type,
78
+ user_id: user_id,
79
+ user_secret: user_secret,
80
+ account_id: account_id,
81
+ )
82
+ p status_code # => 2xx
83
+ p headers # => { ... }
84
+ p data # => StrategyQuotes
85
+ rescue SnapTrade::ApiError => e
86
+ puts "Exception when calling SnapTrade::Options.get_option_strategy: #{e}"
87
+ end
88
+ ```
89
+
90
+ ### Parameters
91
+
92
+ | Name | Type | Description | Notes |
93
+ | ---- | ---- | ----------- | ----- |
94
+ | **user_id** | **String** | | |
95
+ | **user_secret** | **String** | | |
96
+ | **account_id** | **String** | The ID of the account get positions. | |
97
+ | **options_get_option_strategy_request** | [**OptionsGetOptionStrategyRequest**](OptionsGetOptionStrategyRequest.md) | | |
98
+
99
+ ### Return type
100
+
101
+ [**StrategyQuotes**](StrategyQuotes.md)
102
+
103
+ ## get_options_chain
104
+
105
+ Get the options chain
106
+
107
+ ### Example
108
+
109
+ ```ruby
110
+ require 'snaptrade'
111
+
112
+ SnapTrade.client_id = "YOUR_CLIENT_ID"
113
+ SnapTrade.consumer_key = "YOUR_CONSUMER_KEY"
114
+
115
+ user_id = "John.doe@snaptrade.com"
116
+ user_secret = "USERSECRET123"
117
+ account_id = "accountId_example"
118
+ symbol = "symbol_example"
119
+
120
+ begin
121
+ # Get the options chain
122
+ result = SnapTrade::Options.get_options_chain(
123
+ user_id: user_id,
124
+ user_secret: user_secret,
125
+ account_id: account_id,
126
+ symbol: symbol,
127
+ )
128
+ p result
129
+ rescue SnapTrade::ApiError => e
130
+ puts "Exception when calling SnapTrade::Options.get_options_chain: #{e}"
131
+ end
132
+ ```
133
+
134
+ #### Using the get_options_chain_with_http_info variant
135
+
136
+ This returns an Array which contains the response data, status code and headers.
137
+
138
+ ```ruby
139
+ user_id = "John.doe@snaptrade.com"
140
+ user_secret = "USERSECRET123"
141
+ account_id = "accountId_example"
142
+ symbol = "symbol_example"
143
+
144
+ begin
145
+ # Get the options chain
146
+ data, status_code, headers, response = SnapTrade::Options.get_options_chain_with_http_info(
147
+ user_id: user_id,
148
+ user_secret: user_secret,
149
+ account_id: account_id,
150
+ symbol: symbol,
151
+ )
152
+ p status_code # => 2xx
153
+ p headers # => { ... }
154
+ p data # => Array<OptionChainInner>
155
+ rescue SnapTrade::ApiError => e
156
+ puts "Exception when calling SnapTrade::Options.get_options_chain: #{e}"
157
+ end
158
+ ```
159
+
160
+ ### Parameters
161
+
162
+ | Name | Type | Description | Notes |
163
+ | ---- | ---- | ----------- | ----- |
164
+ | **user_id** | **String** | | |
165
+ | **user_secret** | **String** | | |
166
+ | **account_id** | **String** | The ID of the account get positions. | |
167
+ | **symbol** | **String** | Universal symbol ID if symbol | |
168
+
169
+ ### Return type
170
+
171
+ [**Array&lt;OptionChainInner&gt;**](OptionChainInner.md)
172
+
173
+ ## get_options_strategy_quote
174
+
175
+ Get latest market data of option strategy
176
+
177
+ ### Example
178
+
179
+ ```ruby
180
+ require 'snaptrade'
181
+
182
+ SnapTrade.client_id = "YOUR_CLIENT_ID"
183
+ SnapTrade.consumer_key = "YOUR_CONSUMER_KEY"
184
+
185
+ user_id = "John.doe@snaptrade.com"
186
+ user_secret = "USERSECRET123"
187
+ account_id = "accountId_example"
188
+ option_strategy_id = "2bcd7cc3-e922-4976-bce1-9858296801c3"
189
+
190
+ begin
191
+ # Get latest market data of option strategy
192
+ result = SnapTrade::Options.get_options_strategy_quote(
193
+ user_id: user_id,
194
+ user_secret: user_secret,
195
+ account_id: account_id,
196
+ option_strategy_id: option_strategy_id,
197
+ )
198
+ p result
199
+ rescue SnapTrade::ApiError => e
200
+ puts "Exception when calling SnapTrade::Options.get_options_strategy_quote: #{e}"
201
+ end
202
+ ```
203
+
204
+ #### Using the get_options_strategy_quote_with_http_info variant
205
+
206
+ This returns an Array which contains the response data, status code and headers.
207
+
208
+ ```ruby
209
+ user_id = "John.doe@snaptrade.com"
210
+ user_secret = "USERSECRET123"
211
+ account_id = "accountId_example"
212
+ option_strategy_id = "2bcd7cc3-e922-4976-bce1-9858296801c3"
213
+
214
+ begin
215
+ # Get latest market data of option strategy
216
+ data, status_code, headers, response = SnapTrade::Options.get_options_strategy_quote_with_http_info(
217
+ user_id: user_id,
218
+ user_secret: user_secret,
219
+ account_id: account_id,
220
+ option_strategy_id: option_strategy_id,
221
+ )
222
+ p status_code # => 2xx
223
+ p headers # => { ... }
224
+ p data # => StrategyQuotes
225
+ rescue SnapTrade::ApiError => e
226
+ puts "Exception when calling SnapTrade::Options.get_options_strategy_quote: #{e}"
227
+ end
228
+ ```
229
+
230
+ ### Parameters
231
+
232
+ | Name | Type | Description | Notes |
233
+ | ---- | ---- | ----------- | ----- |
234
+ | **user_id** | **String** | | |
235
+ | **user_secret** | **String** | | |
236
+ | **account_id** | **String** | The ID of the account get positions. | |
237
+ | **option_strategy_id** | **String** | Option strategy id obtained from response when creating option strategy object | |
238
+
239
+ ### Return type
240
+
241
+ [**StrategyQuotes**](StrategyQuotes.md)
242
+
243
+ ## list_option_holdings
244
+
245
+ Get the options holdings in the account
246
+
247
+ ### Example
248
+
249
+ ```ruby
250
+ require 'snaptrade'
251
+
252
+ SnapTrade.client_id = "YOUR_CLIENT_ID"
253
+ SnapTrade.consumer_key = "YOUR_CONSUMER_KEY"
254
+
255
+ user_id = "John.doe@snaptrade.com"
256
+ user_secret = "USERSECRET123"
257
+ account_id = "accountId_example"
258
+
259
+ begin
260
+ # Get the options holdings in the account
261
+ result = SnapTrade::Options.list_option_holdings(
262
+ user_id: user_id,
263
+ user_secret: user_secret,
264
+ account_id: account_id,
265
+ )
266
+ p result
267
+ rescue SnapTrade::ApiError => e
268
+ puts "Exception when calling SnapTrade::Options.list_option_holdings: #{e}"
269
+ end
270
+ ```
271
+
272
+ #### Using the list_option_holdings_with_http_info variant
273
+
274
+ This returns an Array which contains the response data, status code and headers.
275
+
276
+ ```ruby
277
+ user_id = "John.doe@snaptrade.com"
278
+ user_secret = "USERSECRET123"
279
+ account_id = "accountId_example"
280
+
281
+ begin
282
+ # Get the options holdings in the account
283
+ data, status_code, headers, response = SnapTrade::Options.list_option_holdings_with_http_info(
284
+ user_id: user_id,
285
+ user_secret: user_secret,
286
+ account_id: account_id,
287
+ )
288
+ p status_code # => 2xx
289
+ p headers # => { ... }
290
+ p data # => OptionsHoldings
291
+ rescue SnapTrade::ApiError => e
292
+ puts "Exception when calling SnapTrade::Options.list_option_holdings: #{e}"
293
+ end
294
+ ```
295
+
296
+ ### Parameters
297
+
298
+ | Name | Type | Description | Notes |
299
+ | ---- | ---- | ----------- | ----- |
300
+ | **user_id** | **String** | | |
301
+ | **user_secret** | **String** | | |
302
+ | **account_id** | **String** | The ID of the account get positions. | |
303
+
304
+ ### Return type
305
+
306
+ [**OptionsHoldings**](OptionsHoldings.md)
307
+
308
+ ## place_option_strategy
309
+
310
+ Place an option strategy order on the brokerage
311
+
312
+ ### Example
313
+
314
+ ```ruby
315
+ require 'snaptrade'
316
+
317
+ SnapTrade.client_id = "YOUR_CLIENT_ID"
318
+ SnapTrade.consumer_key = "YOUR_CONSUMER_KEY"
319
+
320
+ order_type = "Limit"
321
+ time_in_force = "DAY"
322
+ price = 31.33
323
+ user_id = "John.doe@snaptrade.com"
324
+ user_secret = "USERSECRET123"
325
+ account_id = "2bcd7cc3-e922-4976-bce1-9858296801c3"
326
+ option_strategy_id = "2bcd7cc3-e922-4976-bce1-9858296801c3"
327
+
328
+ begin
329
+ # Place an option strategy order on the brokerage
330
+ result = SnapTrade::Options.place_option_strategy(
331
+ order_type: order_type,
332
+ time_in_force: time_in_force,
333
+ price: price,
334
+ user_id: user_id,
335
+ user_secret: user_secret,
336
+ account_id: account_id,
337
+ option_strategy_id: option_strategy_id,
338
+ )
339
+ p result
340
+ rescue SnapTrade::ApiError => e
341
+ puts "Exception when calling SnapTrade::Options.place_option_strategy: #{e}"
342
+ end
343
+ ```
344
+
345
+ #### Using the place_option_strategy_with_http_info variant
346
+
347
+ This returns an Array which contains the response data, status code and headers.
348
+
349
+ ```ruby
350
+ order_type = "Limit"
351
+ time_in_force = "DAY"
352
+ price = 31.33
353
+ user_id = "John.doe@snaptrade.com"
354
+ user_secret = "USERSECRET123"
355
+ account_id = "2bcd7cc3-e922-4976-bce1-9858296801c3"
356
+ option_strategy_id = "2bcd7cc3-e922-4976-bce1-9858296801c3"
357
+
358
+ begin
359
+ # Place an option strategy order on the brokerage
360
+ data, status_code, headers, response = SnapTrade::Options.place_option_strategy_with_http_info(
361
+ order_type: order_type,
362
+ time_in_force: time_in_force,
363
+ price: price,
364
+ user_id: user_id,
365
+ user_secret: user_secret,
366
+ account_id: account_id,
367
+ option_strategy_id: option_strategy_id,
368
+ )
369
+ p status_code # => 2xx
370
+ p headers # => { ... }
371
+ p data # => StrategyOrderRecord
372
+ rescue SnapTrade::ApiError => e
373
+ puts "Exception when calling SnapTrade::Options.place_option_strategy: #{e}"
374
+ end
375
+ ```
376
+
377
+ ### Parameters
378
+
379
+ | Name | Type | Description | Notes |
380
+ | ---- | ---- | ----------- | ----- |
381
+ | **user_id** | **String** | | |
382
+ | **user_secret** | **String** | | |
383
+ | **account_id** | **String** | The ID of the account get positions. | |
384
+ | **option_strategy_id** | **String** | Option strategy id obtained from response when creating option strategy object | |
385
+ | **options_place_option_strategy_request** | [**OptionsPlaceOptionStrategyRequest**](OptionsPlaceOptionStrategyRequest.md) | | |
386
+
387
+ ### Return type
388
+
389
+ [**StrategyOrderRecord**](StrategyOrderRecord.md)
390
+
@@ -0,0 +1,22 @@
1
+ # SnapTrade::OptionsGetOptionStrategyRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **underlying_symbol_id** | **String** | | |
8
+ | **legs** | [**Array&lt;OptionLeg&gt;**](OptionLeg.md) | | |
9
+ | **strategy_type** | [**StrategyType**](StrategyType.md) | | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'snaptrade'
15
+
16
+ instance = SnapTrade::OptionsGetOptionStrategyRequest.new(
17
+ underlying_symbol_id: 2bcd7cc3-e922-4976-bce1-9858296801c3,
18
+ legs: null,
19
+ strategy_type: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,28 @@
1
+ # SnapTrade::OptionsHoldings
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | Options information | [optional] |
8
+ | **symbol** | **String** | | [optional] |
9
+ | **option_symbol** | [**OptionsSymbol**](OptionsSymbol.md) | | [optional] |
10
+ | **price** | **Float** | Trade Price if limit or stop limit order | [optional] |
11
+ | **currency** | [**Currency**](Currency.md) | | [optional] |
12
+ | **average_purchase_price** | **Float** | Average purchase price for this position | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'snaptrade'
18
+
19
+ instance = SnapTrade::OptionsHoldings.new(
20
+ id: 11b55fd2-dc29-42ec-ac03-97b5cd757a4d,
21
+ symbol: 2bcd7cc3-e922-4976-bce1-9858296801c3,
22
+ option_symbol: null,
23
+ price: 31.33,
24
+ currency: null,
25
+ average_purchase_price: 108.3353
26
+ )
27
+ ```
28
+
@@ -0,0 +1,22 @@
1
+ # SnapTrade::OptionsPlaceOptionStrategyRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **order_type** | [**OrderStrategyExecuteBodyOrderType**](OrderStrategyExecuteBodyOrderType.md) | | |
8
+ | **time_in_force** | [**OrderStrategyExecuteBodyTimeInForce**](OrderStrategyExecuteBodyTimeInForce.md) | | |
9
+ | **price** | **Float** | Trade Price if limit or stop limit order | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'snaptrade'
15
+
16
+ instance = SnapTrade::OptionsPlaceOptionStrategyRequest.new(
17
+ order_type: null,
18
+ time_in_force: null,
19
+ price: 31.33
20
+ )
21
+ ```
22
+
@@ -0,0 +1,30 @@
1
+ # SnapTrade::OptionsPosition
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **symbol** | **String** | | [optional] |
8
+ | **description** | **String** | | [optional] |
9
+ | **option_symbol** | [**OptionsSymbol**](OptionsSymbol.md) | | [optional] |
10
+ | **price** | **Float** | Trade Price if limit or stop limit order | [optional] |
11
+ | **units** | **Float** | | [optional] |
12
+ | **currency** | [**Currency**](Currency.md) | | [optional] |
13
+ | **average_purchase_price** | **Float** | Average purchase price for this position | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'snaptrade'
19
+
20
+ instance = SnapTrade::OptionsPosition.new(
21
+ symbol: 2bcd7cc3-e922-4976-bce1-9858296801c3,
22
+ description: SPY PUT Aug 2022,
23
+ option_symbol: null,
24
+ price: 31.33,
25
+ units: 10,
26
+ currency: null,
27
+ average_purchase_price: 108.3353
28
+ )
29
+ ```
30
+
@@ -0,0 +1,38 @@
1
+ # SnapTrade::OptionsSymbol
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | | [optional] |
8
+ | **ticker** | **String** | | [optional] |
9
+ | **strike_price** | **Float** | | [optional] |
10
+ | **expiration_date** | **String** | | [optional] |
11
+ | **is_mini_option** | **Boolean** | | [optional] |
12
+ | **underlying_symbol** | [**UnderlyingSymbol**](UnderlyingSymbol.md) | | [optional] |
13
+ | **local_id** | **String** | | [optional] |
14
+ | **security_type** | **Object** | | [optional] |
15
+ | **listing_exchange** | **Object** | | [optional] |
16
+ | **is_quotable** | **Boolean** | | [optional] |
17
+ | **is_tradable** | **Boolean** | | [optional] |
18
+
19
+ ## Example
20
+
21
+ ```ruby
22
+ require 'snaptrade'
23
+
24
+ instance = SnapTrade::OptionsSymbol.new(
25
+ id: 2bcd7cc3-e922-4976-bce1-9858296801c3,
26
+ ticker: SPY 220819P00200000,
27
+ strike_price: 200,
28
+ expiration_date: 2022-08-19T00:00:00.000Z,
29
+ is_mini_option: false,
30
+ underlying_symbol: null,
31
+ local_id: 40817960,
32
+ security_type: {},
33
+ listing_exchange: {},
34
+ is_quotable: true,
35
+ is_tradable: true
36
+ )
37
+ ```
38
+
@@ -0,0 +1,15 @@
1
+ # SnapTrade::OrderStrategyExecuteBodyOrderType
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'snaptrade'
12
+
13
+ instance = SnapTrade::OrderStrategyExecuteBodyOrderType.new()
14
+ ```
15
+
@@ -0,0 +1,15 @@
1
+ # SnapTrade::OrderStrategyExecuteBodyTimeInForce
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'snaptrade'
12
+
13
+ instance = SnapTrade::OrderStrategyExecuteBodyTimeInForce.new()
14
+ ```
15
+
data/docs/OrderType.md ADDED
@@ -0,0 +1,15 @@
1
+ # SnapTrade::OrderType
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'snaptrade'
12
+
13
+ instance = SnapTrade::OrderType.new()
14
+ ```
15
+
@@ -0,0 +1,40 @@
1
+ # SnapTrade::PartnerData
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **redirect_uri** | **String** | URI to redirect user back to after user is done adding brokerage connections | [optional] |
8
+ | **allowed_brokerages** | [**Array&lt;Brokerage&gt;**](Brokerage.md) | Brokerages that can be accessed by partners | [optional] |
9
+ | **name** | **String** | Name of Snaptrade Partner | [optional] |
10
+ | **slug** | **String** | Slug of Snaptrade Partner | [optional] |
11
+ | **logo_url** | **String** | URL to partner&#39;s logo | [optional] |
12
+ | **pin_required** | **Boolean** | Shows if pin is required by users to access connection page | [optional] |
13
+ | **can_access_trades** | **Boolean** | Shows if users of Snaptrade partners can access trade endpoints | [optional] |
14
+ | **can_access_holdings** | **Boolean** | Shows if Snaptrade partners can get user holdings data | [optional] |
15
+ | **can_access_account_history** | **Boolean** | Shows if Snaptrade partners can get users account history data | [optional] |
16
+ | **can_access_reference_data** | **Boolean** | Shows if Snaptrade partners can get users holdings data | [optional] |
17
+ | **can_access_portfolio_management** | **Boolean** | Shows if users Snaptrade partners can access portfolio group management features | [optional] |
18
+ | **can_access_orders** | **Boolean** | Shows if Snaptrade partners can get users account order history | [optional] |
19
+
20
+ ## Example
21
+
22
+ ```ruby
23
+ require 'snaptrade'
24
+
25
+ instance = SnapTrade::PartnerData.new(
26
+ redirect_uri: https://example.com/oauth/snaptrade,
27
+ allowed_brokerages: null,
28
+ name: Wealthy Chimpmunk,
29
+ slug: WEALTHYCHIPMUNK,
30
+ logo_url: https://example.com/logo.png,
31
+ pin_required: false,
32
+ can_access_trades: true,
33
+ can_access_holdings: true,
34
+ can_access_account_history: true,
35
+ can_access_reference_data: true,
36
+ can_access_portfolio_management: true,
37
+ can_access_orders: true
38
+ )
39
+ ```
40
+
data/docs/PastValue.md ADDED
@@ -0,0 +1,22 @@
1
+ # SnapTrade::PastValue
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **date** | **Date** | Date used to specify timeframe for a reporting call (in YYYY-MM-DD format) | [optional] |
8
+ | **value** | **Float** | | [optional] |
9
+ | **currency** | **String** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'snaptrade'
15
+
16
+ instance = SnapTrade::PastValue.new(
17
+ date: Sun Jan 23 16:00:00 PST 2022,
18
+ value: 52.74,
19
+ currency: CAD
20
+ )
21
+ ```
22
+
@@ -0,0 +1,54 @@
1
+ # SnapTrade::PerformanceCustom
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **total_equity_timeframe** | [**Array&lt;PastValue&gt;**](PastValue.md) | | [optional] |
8
+ | **contributions** | [**NetContributions**](NetContributions.md) | | [optional] |
9
+ | **contribution_timeframe** | [**Array&lt;PastValue&gt;**](PastValue.md) | | [optional] |
10
+ | **contribution_timeframe_cumulative** | [**Array&lt;PastValue&gt;**](PastValue.md) | | [optional] |
11
+ | **withdrawal_timeframe** | [**Array&lt;PastValue&gt;**](PastValue.md) | | [optional] |
12
+ | **contribution_streak** | **Float** | Current streak of cosecutive months where contributions were made | [optional] |
13
+ | **contribution_months_contributed** | **Float** | Number of months in the timeframe with contributions | [optional] |
14
+ | **contribution_total_months** | **Float** | Total months in timeframe | [optional] |
15
+ | **dividends** | [**Array&lt;NetDividend&gt;**](NetDividend.md) | | [optional] |
16
+ | **dividend_income** | **Float** | Total dividends received over the timeframe | [optional] |
17
+ | **monthly_dividends** | **Float** | Average dividends received per month over the timeframe | [optional] |
18
+ | **bad_tickers** | **Array&lt;String&gt;** | list of tickers which may not be supported or may not have accurate price data | [optional] |
19
+ | **dividend_timeline** | [**Array&lt;MonthlyDividends&gt;**](MonthlyDividends.md) | | [optional] |
20
+ | **commissions** | **Float** | commissions incurred during the timeframe | [optional] |
21
+ | **forex_fees** | **Float** | forex fees incurred during the timeframe | [optional] |
22
+ | **fees** | **Float** | other fees incurred during the timeframe | [optional] |
23
+ | **rate_of_return** | **Float** | The return rate over the timeframe. Annualized if timeframe is longer than 1 year | [optional] |
24
+ | **return_rate_timeframe** | [**Array&lt;SubPeriodReturnRate&gt;**](SubPeriodReturnRate.md) | | [optional] |
25
+ | **detailed_mode** | **Boolean** | Whether the user has detailed mode enabled (more frequent data points for totalEquity and contribution timeframes) | [optional] |
26
+
27
+ ## Example
28
+
29
+ ```ruby
30
+ require 'snaptrade'
31
+
32
+ instance = SnapTrade::PerformanceCustom.new(
33
+ total_equity_timeframe: null,
34
+ contributions: null,
35
+ contribution_timeframe: null,
36
+ contribution_timeframe_cumulative: null,
37
+ withdrawal_timeframe: null,
38
+ contribution_streak: 5,
39
+ contribution_months_contributed: 10,
40
+ contribution_total_months: 13,
41
+ dividends: null,
42
+ dividend_income: 135.97,
43
+ monthly_dividends: 26.37,
44
+ bad_tickers: null,
45
+ dividend_timeline: null,
46
+ commissions: 3.26,
47
+ forex_fees: 5.26,
48
+ fees: 2.72,
49
+ rate_of_return: 0.082312367452,
50
+ return_rate_timeframe: null,
51
+ detailed_mode: null
52
+ )
53
+ ```
54
+