intrinio-sdk 5.3.0 → 5.6.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (492) hide show
  1. checksums.yaml +5 -5
  2. data/Gemfile +2 -0
  3. data/README.md +56 -12
  4. data/docs/ApiResponseETFHoldings.md +25 -0
  5. data/docs/ApiResponseETFs.md +21 -0
  6. data/docs/ApiResponseZacksEPSEstimates.md +24 -0
  7. data/docs/ApiResponseZacksEPSGrowthRates.md +24 -0
  8. data/docs/ApiResponseZacksETFHoldings.md +24 -0
  9. data/docs/ApiResponseZacksInstitutionalHoldingCompanies.md +24 -0
  10. data/docs/ApiResponseZacksInstitutionalHoldingOwners.md +24 -0
  11. data/docs/ApiResponseZacksInstitutionalHoldings.md +24 -0
  12. data/docs/ApiResponseZacksLongTermGrowthRates.md +24 -0
  13. data/docs/ApiResponseZacksTargetPriceConsensuses.md +24 -0
  14. data/docs/BulkDownloadsApi.md +3 -7
  15. data/docs/CompanyApi.md +113 -172
  16. data/docs/DataPointApi.md +10 -22
  17. data/docs/DataTagApi.md +21 -33
  18. data/docs/ETF.md +138 -0
  19. data/docs/ETFAnalytics.md +31 -0
  20. data/docs/ETFHolding.md +37 -0
  21. data/docs/ETFStats.md +53 -0
  22. data/docs/ETFSummary.md +27 -0
  23. data/docs/ETFsApi.md +490 -0
  24. data/docs/FilingApi.md +72 -116
  25. data/docs/ForexApi.md +22 -35
  26. data/docs/FundamentalsApi.md +19 -42
  27. data/docs/HistoricalDataApi.md +14 -19
  28. data/docs/IndexApi.md +117 -204
  29. data/docs/MunicipalityApi.md +28 -39
  30. data/docs/OptionsApi.md +45 -62
  31. data/docs/RealtimeStockPrice.md +1 -0
  32. data/docs/SecurityApi.md +534 -719
  33. data/docs/StockExchangeApi.md +43 -67
  34. data/docs/TechnicalApi.md +359 -483
  35. data/docs/ZacksApi.md +798 -101
  36. data/docs/ZacksEPSEstimate.md +39 -0
  37. data/docs/ZacksEPSGrowthRate.md +45 -0
  38. data/docs/ZacksETFHolding.md +26 -0
  39. data/docs/ZacksInstitutionalHolding.md +41 -0
  40. data/docs/ZacksInstitutionalHoldingCompanyDetail.md +32 -0
  41. data/docs/ZacksInstitutionalHoldingCompanySummary.md +22 -0
  42. data/docs/ZacksInstitutionalHoldingHistoricalSummary.md +21 -0
  43. data/docs/ZacksInstitutionalHoldingOwnerDetail.md +40 -0
  44. data/docs/ZacksInstitutionalHoldingOwnerSummary.md +21 -0
  45. data/docs/ZacksLongTermGrowthRate.md +47 -0
  46. data/docs/ZacksTargetPriceConsensus.md +35 -0
  47. data/intrinio-sdk.gemspec +3 -2
  48. data/lib/intrinio-sdk.rb +28 -1
  49. data/lib/intrinio-sdk/api/bulk_downloads_api.rb +1 -1
  50. data/lib/intrinio-sdk/api/company_api.rb +1 -1
  51. data/lib/intrinio-sdk/api/data_point_api.rb +1 -1
  52. data/lib/intrinio-sdk/api/data_tag_api.rb +1 -1
  53. data/lib/intrinio-sdk/api/et_fs_api.rb +359 -0
  54. data/lib/intrinio-sdk/api/filing_api.rb +1 -1
  55. data/lib/intrinio-sdk/api/forex_api.rb +5 -5
  56. data/lib/intrinio-sdk/api/fundamentals_api.rb +1 -1
  57. data/lib/intrinio-sdk/api/historical_data_api.rb +1 -1
  58. data/lib/intrinio-sdk/api/index_api.rb +1 -1
  59. data/lib/intrinio-sdk/api/municipality_api.rb +3 -3
  60. data/lib/intrinio-sdk/api/options_api.rb +1 -1
  61. data/lib/intrinio-sdk/api/security_api.rb +9 -9
  62. data/lib/intrinio-sdk/api/stock_exchange_api.rb +1 -1
  63. data/lib/intrinio-sdk/api/technical_api.rb +1 -1
  64. data/lib/intrinio-sdk/api/zacks_api.rb +538 -13
  65. data/lib/intrinio-sdk/api_client.rb +30 -24
  66. data/lib/intrinio-sdk/api_error.rb +1 -1
  67. data/lib/intrinio-sdk/configuration.rb +4 -1
  68. data/lib/intrinio-sdk/models/accumulation_distribution_index_technical_value.rb +1 -1
  69. data/lib/intrinio-sdk/models/api_response_bulk_download_links.rb +1 -1
  70. data/lib/intrinio-sdk/models/api_response_companies.rb +1 -1
  71. data/lib/intrinio-sdk/models/api_response_companies_search.rb +1 -1
  72. data/lib/intrinio-sdk/models/api_response_company_filings.rb +1 -1
  73. data/lib/intrinio-sdk/models/api_response_company_fundamentals.rb +1 -1
  74. data/lib/intrinio-sdk/models/api_response_company_historical_data.rb +1 -1
  75. data/lib/intrinio-sdk/models/api_response_company_news.rb +1 -1
  76. data/lib/intrinio-sdk/models/api_response_company_securities.rb +1 -1
  77. data/lib/intrinio-sdk/models/api_response_data_tags.rb +1 -1
  78. data/lib/intrinio-sdk/models/api_response_data_tags_search.rb +1 -1
  79. data/lib/intrinio-sdk/models/api_response_economic_index_historical_data.rb +1 -1
  80. data/lib/intrinio-sdk/models/api_response_economic_indices.rb +1 -1
  81. data/lib/intrinio-sdk/models/api_response_economic_indices_search.rb +1 -1
  82. data/lib/intrinio-sdk/models/api_response_et_fs.rb +198 -0
  83. data/lib/intrinio-sdk/models/api_response_etf_holdings.rb +207 -0
  84. data/lib/intrinio-sdk/models/api_response_filing_fundamentals.rb +1 -1
  85. data/lib/intrinio-sdk/models/api_response_filing_notes.rb +1 -1
  86. data/lib/intrinio-sdk/models/api_response_filing_notes_search.rb +1 -1
  87. data/lib/intrinio-sdk/models/api_response_filings.rb +1 -1
  88. data/lib/intrinio-sdk/models/api_response_forex_currencies.rb +1 -1
  89. data/lib/intrinio-sdk/models/api_response_forex_pairs.rb +1 -1
  90. data/lib/intrinio-sdk/models/api_response_forex_prices.rb +1 -1
  91. data/lib/intrinio-sdk/models/api_response_historical_data.rb +1 -1
  92. data/lib/intrinio-sdk/models/api_response_initial_public_offerings.rb +1 -1
  93. data/lib/intrinio-sdk/models/api_response_municipalities.rb +1 -1
  94. data/lib/intrinio-sdk/models/api_response_municipalitiy_financials.rb +1 -1
  95. data/lib/intrinio-sdk/models/api_response_news.rb +1 -1
  96. data/lib/intrinio-sdk/models/api_response_option_prices.rb +1 -1
  97. data/lib/intrinio-sdk/models/api_response_options.rb +1 -1
  98. data/lib/intrinio-sdk/models/api_response_options_chain.rb +1 -1
  99. data/lib/intrinio-sdk/models/api_response_options_expirations.rb +1 -1
  100. data/lib/intrinio-sdk/models/api_response_reported_financials.rb +1 -1
  101. data/lib/intrinio-sdk/models/api_response_securities.rb +1 -1
  102. data/lib/intrinio-sdk/models/api_response_securities_search.rb +1 -1
  103. data/lib/intrinio-sdk/models/api_response_security_accumulation_distribution_index.rb +1 -1
  104. data/lib/intrinio-sdk/models/api_response_security_average_daily_trading_volume.rb +1 -1
  105. data/lib/intrinio-sdk/models/api_response_security_average_directional_index.rb +1 -1
  106. data/lib/intrinio-sdk/models/api_response_security_average_true_range.rb +1 -1
  107. data/lib/intrinio-sdk/models/api_response_security_awesome_oscillator.rb +1 -1
  108. data/lib/intrinio-sdk/models/api_response_security_bollinger_bands.rb +1 -1
  109. data/lib/intrinio-sdk/models/api_response_security_chaikin_money_flow.rb +1 -1
  110. data/lib/intrinio-sdk/models/api_response_security_commodity_channel_index.rb +1 -1
  111. data/lib/intrinio-sdk/models/api_response_security_detrended_price_oscillator.rb +1 -1
  112. data/lib/intrinio-sdk/models/api_response_security_donchian_channel.rb +1 -1
  113. data/lib/intrinio-sdk/models/api_response_security_ease_of_movement.rb +1 -1
  114. data/lib/intrinio-sdk/models/api_response_security_force_index.rb +1 -1
  115. data/lib/intrinio-sdk/models/api_response_security_historical_data.rb +1 -1
  116. data/lib/intrinio-sdk/models/api_response_security_ichimoku_kinko_hyo.rb +1 -1
  117. data/lib/intrinio-sdk/models/api_response_security_intraday_prices.rb +1 -1
  118. data/lib/intrinio-sdk/models/api_response_security_keltner_channel.rb +1 -1
  119. data/lib/intrinio-sdk/models/api_response_security_know_sure_thing.rb +1 -1
  120. data/lib/intrinio-sdk/models/api_response_security_mass_index.rb +1 -1
  121. data/lib/intrinio-sdk/models/api_response_security_money_flow_index.rb +1 -1
  122. data/lib/intrinio-sdk/models/api_response_security_moving_average_convergence_divergence.rb +1 -1
  123. data/lib/intrinio-sdk/models/api_response_security_negative_volume_index.rb +1 -1
  124. data/lib/intrinio-sdk/models/api_response_security_on_balance_volume.rb +1 -1
  125. data/lib/intrinio-sdk/models/api_response_security_on_balance_volume_mean.rb +1 -1
  126. data/lib/intrinio-sdk/models/api_response_security_relative_strength_index.rb +1 -1
  127. data/lib/intrinio-sdk/models/api_response_security_simple_moving_average.rb +1 -1
  128. data/lib/intrinio-sdk/models/api_response_security_stochastic_oscillator.rb +1 -1
  129. data/lib/intrinio-sdk/models/api_response_security_stock_price_adjustments.rb +1 -1
  130. data/lib/intrinio-sdk/models/api_response_security_stock_prices.rb +1 -1
  131. data/lib/intrinio-sdk/models/api_response_security_triple_exponential_average.rb +1 -1
  132. data/lib/intrinio-sdk/models/api_response_security_true_strength_index.rb +1 -1
  133. data/lib/intrinio-sdk/models/api_response_security_ultimate_oscillator.rb +1 -1
  134. data/lib/intrinio-sdk/models/api_response_security_volume_price_trend.rb +1 -1
  135. data/lib/intrinio-sdk/models/api_response_security_volume_weighted_average_price.rb +1 -1
  136. data/lib/intrinio-sdk/models/api_response_security_vortex_indicator.rb +1 -1
  137. data/lib/intrinio-sdk/models/api_response_security_williams_r.rb +1 -1
  138. data/lib/intrinio-sdk/models/api_response_security_zacks_analyst_ratings.rb +1 -1
  139. data/lib/intrinio-sdk/models/api_response_security_zacks_analyst_ratings_snapshot.rb +1 -1
  140. data/lib/intrinio-sdk/models/api_response_security_zacks_eps_surprises.rb +1 -1
  141. data/lib/intrinio-sdk/models/api_response_security_zacks_sales_surprises.rb +1 -1
  142. data/lib/intrinio-sdk/models/api_response_sic_index_historical_data.rb +1 -1
  143. data/lib/intrinio-sdk/models/api_response_sic_indices.rb +1 -1
  144. data/lib/intrinio-sdk/models/api_response_sic_indices_search.rb +1 -1
  145. data/lib/intrinio-sdk/models/api_response_standardized_financials.rb +1 -1
  146. data/lib/intrinio-sdk/models/api_response_stock_exchange_realtime_stock_prices.rb +1 -1
  147. data/lib/intrinio-sdk/models/api_response_stock_exchange_securities.rb +1 -1
  148. data/lib/intrinio-sdk/models/api_response_stock_exchange_stock_price_adjustments.rb +1 -1
  149. data/lib/intrinio-sdk/models/api_response_stock_exchange_stock_prices.rb +1 -1
  150. data/lib/intrinio-sdk/models/api_response_stock_exchanges.rb +1 -1
  151. data/lib/intrinio-sdk/models/api_response_stock_market_index_historical_data.rb +1 -1
  152. data/lib/intrinio-sdk/models/api_response_stock_market_indices.rb +1 -1
  153. data/lib/intrinio-sdk/models/api_response_stock_market_indices_search.rb +1 -1
  154. data/lib/intrinio-sdk/models/api_response_zacks_analyst_ratings.rb +1 -1
  155. data/lib/intrinio-sdk/models/api_response_zacks_eps_estimates.rb +201 -0
  156. data/lib/intrinio-sdk/models/api_response_zacks_eps_growth_rates.rb +201 -0
  157. data/lib/intrinio-sdk/models/api_response_zacks_eps_surprises.rb +1 -1
  158. data/lib/intrinio-sdk/models/api_response_zacks_etf_holdings.rb +201 -0
  159. data/lib/intrinio-sdk/models/api_response_zacks_institutional_holding_companies.rb +201 -0
  160. data/lib/intrinio-sdk/models/api_response_zacks_institutional_holding_owners.rb +201 -0
  161. data/lib/intrinio-sdk/models/api_response_zacks_institutional_holdings.rb +201 -0
  162. data/lib/intrinio-sdk/models/api_response_zacks_long_term_growth_rates.rb +201 -0
  163. data/lib/intrinio-sdk/models/api_response_zacks_sales_surprises.rb +1 -1
  164. data/lib/intrinio-sdk/models/api_response_zacks_target_price_consensuses.rb +201 -0
  165. data/lib/intrinio-sdk/models/average_daily_trading_volume_technical_value.rb +1 -1
  166. data/lib/intrinio-sdk/models/average_directional_index_technical_value.rb +1 -1
  167. data/lib/intrinio-sdk/models/average_true_range_technical_value.rb +1 -1
  168. data/lib/intrinio-sdk/models/awesome_oscillator_technical_value.rb +1 -1
  169. data/lib/intrinio-sdk/models/bollinger_bands_technical_value.rb +1 -1
  170. data/lib/intrinio-sdk/models/bulk_download_links.rb +1 -1
  171. data/lib/intrinio-sdk/models/bulk_download_summary.rb +1 -1
  172. data/lib/intrinio-sdk/models/chaikin_money_flow_technical_value.rb +1 -1
  173. data/lib/intrinio-sdk/models/commodity_channel_index_technical_value.rb +1 -1
  174. data/lib/intrinio-sdk/models/company.rb +1 -1
  175. data/lib/intrinio-sdk/models/company_filing.rb +1 -1
  176. data/lib/intrinio-sdk/models/company_initial_public_offering.rb +1 -1
  177. data/lib/intrinio-sdk/models/company_news.rb +1 -1
  178. data/lib/intrinio-sdk/models/company_news_summary.rb +1 -1
  179. data/lib/intrinio-sdk/models/company_summary.rb +1 -1
  180. data/lib/intrinio-sdk/models/data_tag.rb +1 -1
  181. data/lib/intrinio-sdk/models/data_tag_summary.rb +1 -1
  182. data/lib/intrinio-sdk/models/detrended_price_oscillator_technical_value.rb +1 -1
  183. data/lib/intrinio-sdk/models/dividend_record.rb +1 -1
  184. data/lib/intrinio-sdk/models/donchian_channel_technical_value.rb +1 -1
  185. data/lib/intrinio-sdk/models/earnings_record.rb +1 -1
  186. data/lib/intrinio-sdk/models/ease_of_movement_technical_value.rb +1 -1
  187. data/lib/intrinio-sdk/models/economic_index.rb +1 -1
  188. data/lib/intrinio-sdk/models/economic_index_summary.rb +1 -1
  189. data/lib/intrinio-sdk/models/etf.rb +1369 -0
  190. data/lib/intrinio-sdk/models/etf_analytics.rb +268 -0
  191. data/lib/intrinio-sdk/models/etf_holding.rb +359 -0
  192. data/lib/intrinio-sdk/models/etf_stats.rb +487 -0
  193. data/lib/intrinio-sdk/models/etf_summary.rb +259 -0
  194. data/lib/intrinio-sdk/models/filing.rb +1 -1
  195. data/lib/intrinio-sdk/models/filing_note.rb +1 -1
  196. data/lib/intrinio-sdk/models/filing_note_filing.rb +1 -1
  197. data/lib/intrinio-sdk/models/filing_note_summary.rb +1 -1
  198. data/lib/intrinio-sdk/models/filing_summary.rb +1 -1
  199. data/lib/intrinio-sdk/models/force_index_technical_value.rb +1 -1
  200. data/lib/intrinio-sdk/models/forex_currency.rb +1 -1
  201. data/lib/intrinio-sdk/models/forex_pair.rb +1 -1
  202. data/lib/intrinio-sdk/models/forex_price.rb +1 -1
  203. data/lib/intrinio-sdk/models/fundamental.rb +1 -1
  204. data/lib/intrinio-sdk/models/fundamental_summary.rb +1 -1
  205. data/lib/intrinio-sdk/models/historical_data.rb +1 -1
  206. data/lib/intrinio-sdk/models/ichimoku_kinko_hyo_technical_value.rb +1 -1
  207. data/lib/intrinio-sdk/models/intraday_stock_price.rb +1 -1
  208. data/lib/intrinio-sdk/models/keltner_channel_technical_value.rb +1 -1
  209. data/lib/intrinio-sdk/models/know_sure_thing_technical_value.rb +1 -1
  210. data/lib/intrinio-sdk/models/mass_index_technical_value.rb +1 -1
  211. data/lib/intrinio-sdk/models/money_flow_index_technical_value.rb +1 -1
  212. data/lib/intrinio-sdk/models/moving_average_convergence_divergence_technical_value.rb +1 -1
  213. data/lib/intrinio-sdk/models/municipality.rb +1 -1
  214. data/lib/intrinio-sdk/models/municipality_financial.rb +1 -1
  215. data/lib/intrinio-sdk/models/negative_volume_index_technical_value.rb +1 -1
  216. data/lib/intrinio-sdk/models/on_balance_volume_mean_technical_value.rb +1 -1
  217. data/lib/intrinio-sdk/models/on_balance_volume_technical_value.rb +1 -1
  218. data/lib/intrinio-sdk/models/option.rb +1 -1
  219. data/lib/intrinio-sdk/models/option_chain.rb +1 -1
  220. data/lib/intrinio-sdk/models/option_price.rb +1 -1
  221. data/lib/intrinio-sdk/models/realtime_stock_price.rb +12 -2
  222. data/lib/intrinio-sdk/models/realtime_stock_price_security.rb +1 -1
  223. data/lib/intrinio-sdk/models/relative_strength_index_technical_value.rb +1 -1
  224. data/lib/intrinio-sdk/models/reported_financial.rb +1 -1
  225. data/lib/intrinio-sdk/models/reported_financial_dimension.rb +1 -1
  226. data/lib/intrinio-sdk/models/reported_tag.rb +1 -1
  227. data/lib/intrinio-sdk/models/security.rb +1 -1
  228. data/lib/intrinio-sdk/models/security_screen_clause.rb +1 -1
  229. data/lib/intrinio-sdk/models/security_screen_group.rb +1 -1
  230. data/lib/intrinio-sdk/models/security_screen_result.rb +1 -1
  231. data/lib/intrinio-sdk/models/security_screen_result_data.rb +1 -1
  232. data/lib/intrinio-sdk/models/security_summary.rb +1 -1
  233. data/lib/intrinio-sdk/models/sic_index.rb +1 -1
  234. data/lib/intrinio-sdk/models/simple_moving_average_technical_value.rb +1 -1
  235. data/lib/intrinio-sdk/models/standardized_financial.rb +1 -1
  236. data/lib/intrinio-sdk/models/stochastic_oscillator_technical_value.rb +1 -1
  237. data/lib/intrinio-sdk/models/stock_exchange.rb +1 -1
  238. data/lib/intrinio-sdk/models/stock_market_index.rb +1 -1
  239. data/lib/intrinio-sdk/models/stock_market_index_summary.rb +1 -1
  240. data/lib/intrinio-sdk/models/stock_price.rb +1 -1
  241. data/lib/intrinio-sdk/models/stock_price_adjustment.rb +1 -1
  242. data/lib/intrinio-sdk/models/stock_price_adjustment_summary.rb +1 -1
  243. data/lib/intrinio-sdk/models/stock_price_summary.rb +1 -1
  244. data/lib/intrinio-sdk/models/technical_indicator.rb +1 -1
  245. data/lib/intrinio-sdk/models/triple_exponential_average_technical_value.rb +1 -1
  246. data/lib/intrinio-sdk/models/true_strength_index_technical_value.rb +1 -1
  247. data/lib/intrinio-sdk/models/ultimate_oscillator_technical_value.rb +1 -1
  248. data/lib/intrinio-sdk/models/volume_price_trend_technical_value.rb +1 -1
  249. data/lib/intrinio-sdk/models/volume_weighted_average_price_value.rb +1 -1
  250. data/lib/intrinio-sdk/models/vortex_indicator_technical_value.rb +1 -1
  251. data/lib/intrinio-sdk/models/williams_r_technical_value.rb +1 -1
  252. data/lib/intrinio-sdk/models/zacks_analyst_rating.rb +1 -1
  253. data/lib/intrinio-sdk/models/zacks_analyst_rating_snapshot.rb +1 -1
  254. data/lib/intrinio-sdk/models/zacks_analyst_rating_summary.rb +1 -1
  255. data/lib/intrinio-sdk/models/zacks_eps_estimate.rb +348 -0
  256. data/lib/intrinio-sdk/models/zacks_eps_growth_rate.rb +408 -0
  257. data/lib/intrinio-sdk/models/zacks_eps_surprise.rb +1 -1
  258. data/lib/intrinio-sdk/models/zacks_eps_surprise_summary.rb +1 -1
  259. data/lib/intrinio-sdk/models/zacks_etf_holding.rb +249 -0
  260. data/lib/intrinio-sdk/models/zacks_institutional_holding.rb +308 -0
  261. data/lib/intrinio-sdk/models/zacks_institutional_holding_company_detail.rb +309 -0
  262. data/lib/intrinio-sdk/models/zacks_institutional_holding_company_summary.rb +209 -0
  263. data/lib/intrinio-sdk/models/zacks_institutional_holding_historical_summary.rb +199 -0
  264. data/lib/intrinio-sdk/models/zacks_institutional_holding_owner_detail.rb +389 -0
  265. data/lib/intrinio-sdk/models/zacks_institutional_holding_owner_summary.rb +199 -0
  266. data/lib/intrinio-sdk/models/zacks_long_term_growth_rate.rb +429 -0
  267. data/lib/intrinio-sdk/models/zacks_sales_surprise.rb +1 -1
  268. data/lib/intrinio-sdk/models/zacks_sales_surprise_summary.rb +1 -1
  269. data/lib/intrinio-sdk/models/zacks_target_price_consensus.rb +308 -0
  270. data/lib/intrinio-sdk/version.rb +2 -2
  271. data/spec/api/bulk_downloads_api_spec.rb +1 -1
  272. data/spec/api/company_api_spec.rb +1 -1
  273. data/spec/api/data_point_api_spec.rb +1 -1
  274. data/spec/api/data_tag_api_spec.rb +1 -1
  275. data/spec/api/et_fs_api_spec.rb +111 -0
  276. data/spec/api/filing_api_spec.rb +1 -1
  277. data/spec/api/forex_api_spec.rb +3 -3
  278. data/spec/api/fundamentals_api_spec.rb +1 -1
  279. data/spec/api/historical_data_api_spec.rb +1 -1
  280. data/spec/api/index_api_spec.rb +1 -1
  281. data/spec/api/municipality_api_spec.rb +2 -2
  282. data/spec/api/options_api_spec.rb +1 -1
  283. data/spec/api/security_api_spec.rb +5 -5
  284. data/spec/api/stock_exchange_api_spec.rb +1 -1
  285. data/spec/api/technical_api_spec.rb +1 -1
  286. data/spec/api/zacks_api_spec.rb +132 -7
  287. data/spec/api_client_spec.rb +1 -1
  288. data/spec/configuration_spec.rb +1 -1
  289. data/spec/models/accumulation_distribution_index_technical_value_spec.rb +1 -1
  290. data/spec/models/api_response_bulk_download_links_spec.rb +1 -1
  291. data/spec/models/api_response_companies_search_spec.rb +1 -1
  292. data/spec/models/api_response_companies_spec.rb +1 -1
  293. data/spec/models/api_response_company_filings_spec.rb +1 -1
  294. data/spec/models/api_response_company_fundamentals_spec.rb +1 -1
  295. data/spec/models/api_response_company_historical_data_spec.rb +1 -1
  296. data/spec/models/api_response_company_news_spec.rb +1 -1
  297. data/spec/models/api_response_company_securities_spec.rb +1 -1
  298. data/spec/models/api_response_data_tags_search_spec.rb +1 -1
  299. data/spec/models/api_response_data_tags_spec.rb +1 -1
  300. data/spec/models/api_response_economic_index_historical_data_spec.rb +1 -1
  301. data/spec/models/api_response_economic_indices_search_spec.rb +1 -1
  302. data/spec/models/api_response_economic_indices_spec.rb +1 -1
  303. data/spec/models/api_response_et_fs_spec.rb +48 -0
  304. data/spec/models/api_response_etf_holdings_spec.rb +54 -0
  305. data/spec/models/api_response_filing_fundamentals_spec.rb +1 -1
  306. data/spec/models/api_response_filing_notes_search_spec.rb +1 -1
  307. data/spec/models/api_response_filing_notes_spec.rb +1 -1
  308. data/spec/models/api_response_filings_spec.rb +1 -1
  309. data/spec/models/api_response_forex_currencies_spec.rb +1 -1
  310. data/spec/models/api_response_forex_pairs_spec.rb +1 -1
  311. data/spec/models/api_response_forex_prices_spec.rb +1 -1
  312. data/spec/models/api_response_historical_data_spec.rb +1 -1
  313. data/spec/models/api_response_initial_public_offerings_spec.rb +1 -1
  314. data/spec/models/api_response_municipalities_spec.rb +1 -1
  315. data/spec/models/api_response_municipalitiy_financials_spec.rb +1 -1
  316. data/spec/models/api_response_news_spec.rb +1 -1
  317. data/spec/models/api_response_option_prices_spec.rb +1 -1
  318. data/spec/models/api_response_options_chain_spec.rb +1 -1
  319. data/spec/models/api_response_options_expirations_spec.rb +1 -1
  320. data/spec/models/api_response_options_spec.rb +1 -1
  321. data/spec/models/api_response_reported_financials_spec.rb +1 -1
  322. data/spec/models/api_response_securities_search_spec.rb +1 -1
  323. data/spec/models/api_response_securities_spec.rb +1 -1
  324. data/spec/models/api_response_security_accumulation_distribution_index_spec.rb +1 -1
  325. data/spec/models/api_response_security_average_daily_trading_volume_spec.rb +1 -1
  326. data/spec/models/api_response_security_average_directional_index_spec.rb +1 -1
  327. data/spec/models/api_response_security_average_true_range_spec.rb +1 -1
  328. data/spec/models/api_response_security_awesome_oscillator_spec.rb +1 -1
  329. data/spec/models/api_response_security_bollinger_bands_spec.rb +1 -1
  330. data/spec/models/api_response_security_chaikin_money_flow_spec.rb +1 -1
  331. data/spec/models/api_response_security_commodity_channel_index_spec.rb +1 -1
  332. data/spec/models/api_response_security_detrended_price_oscillator_spec.rb +1 -1
  333. data/spec/models/api_response_security_donchian_channel_spec.rb +1 -1
  334. data/spec/models/api_response_security_ease_of_movement_spec.rb +1 -1
  335. data/spec/models/api_response_security_force_index_spec.rb +1 -1
  336. data/spec/models/api_response_security_historical_data_spec.rb +1 -1
  337. data/spec/models/api_response_security_ichimoku_kinko_hyo_spec.rb +1 -1
  338. data/spec/models/api_response_security_intraday_prices_spec.rb +1 -1
  339. data/spec/models/api_response_security_keltner_channel_spec.rb +1 -1
  340. data/spec/models/api_response_security_know_sure_thing_spec.rb +1 -1
  341. data/spec/models/api_response_security_mass_index_spec.rb +1 -1
  342. data/spec/models/api_response_security_money_flow_index_spec.rb +1 -1
  343. data/spec/models/api_response_security_moving_average_convergence_divergence_spec.rb +1 -1
  344. data/spec/models/api_response_security_negative_volume_index_spec.rb +1 -1
  345. data/spec/models/api_response_security_on_balance_volume_mean_spec.rb +1 -1
  346. data/spec/models/api_response_security_on_balance_volume_spec.rb +1 -1
  347. data/spec/models/api_response_security_relative_strength_index_spec.rb +1 -1
  348. data/spec/models/api_response_security_simple_moving_average_spec.rb +1 -1
  349. data/spec/models/api_response_security_stochastic_oscillator_spec.rb +1 -1
  350. data/spec/models/api_response_security_stock_price_adjustments_spec.rb +1 -1
  351. data/spec/models/api_response_security_stock_prices_spec.rb +1 -1
  352. data/spec/models/api_response_security_triple_exponential_average_spec.rb +1 -1
  353. data/spec/models/api_response_security_true_strength_index_spec.rb +1 -1
  354. data/spec/models/api_response_security_ultimate_oscillator_spec.rb +1 -1
  355. data/spec/models/api_response_security_volume_price_trend_spec.rb +1 -1
  356. data/spec/models/api_response_security_volume_weighted_average_price_spec.rb +1 -1
  357. data/spec/models/api_response_security_vortex_indicator_spec.rb +1 -1
  358. data/spec/models/api_response_security_williams_r_spec.rb +1 -1
  359. data/spec/models/api_response_security_zacks_analyst_ratings_snapshot_spec.rb +1 -1
  360. data/spec/models/api_response_security_zacks_analyst_ratings_spec.rb +1 -1
  361. data/spec/models/api_response_security_zacks_eps_surprises_spec.rb +1 -1
  362. data/spec/models/api_response_security_zacks_sales_surprises_spec.rb +1 -1
  363. data/spec/models/api_response_sic_index_historical_data_spec.rb +1 -1
  364. data/spec/models/api_response_sic_indices_search_spec.rb +1 -1
  365. data/spec/models/api_response_sic_indices_spec.rb +1 -1
  366. data/spec/models/api_response_standardized_financials_spec.rb +1 -1
  367. data/spec/models/api_response_stock_exchange_realtime_stock_prices_spec.rb +1 -1
  368. data/spec/models/api_response_stock_exchange_securities_spec.rb +1 -1
  369. data/spec/models/api_response_stock_exchange_stock_price_adjustments_spec.rb +1 -1
  370. data/spec/models/api_response_stock_exchange_stock_prices_spec.rb +1 -1
  371. data/spec/models/api_response_stock_exchanges_spec.rb +1 -1
  372. data/spec/models/api_response_stock_market_index_historical_data_spec.rb +1 -1
  373. data/spec/models/api_response_stock_market_indices_search_spec.rb +1 -1
  374. data/spec/models/api_response_stock_market_indices_spec.rb +1 -1
  375. data/spec/models/api_response_zacks_analyst_ratings_spec.rb +1 -1
  376. data/spec/models/api_response_zacks_eps_estimates_spec.rb +48 -0
  377. data/spec/models/api_response_zacks_eps_growth_rates_spec.rb +48 -0
  378. data/spec/models/api_response_zacks_eps_surprises_spec.rb +1 -1
  379. data/spec/models/api_response_zacks_etf_holdings_spec.rb +48 -0
  380. data/spec/models/api_response_zacks_institutional_holding_companies_spec.rb +48 -0
  381. data/spec/models/api_response_zacks_institutional_holding_owners_spec.rb +48 -0
  382. data/spec/models/api_response_zacks_institutional_holdings_spec.rb +48 -0
  383. data/spec/models/api_response_zacks_long_term_growth_rates_spec.rb +48 -0
  384. data/spec/models/api_response_zacks_sales_surprises_spec.rb +1 -1
  385. data/spec/models/api_response_zacks_target_price_consensuses_spec.rb +48 -0
  386. data/spec/models/average_daily_trading_volume_technical_value_spec.rb +1 -1
  387. data/spec/models/average_directional_index_technical_value_spec.rb +1 -1
  388. data/spec/models/average_true_range_technical_value_spec.rb +1 -1
  389. data/spec/models/awesome_oscillator_technical_value_spec.rb +1 -1
  390. data/spec/models/bollinger_bands_technical_value_spec.rb +1 -1
  391. data/spec/models/bulk_download_links_spec.rb +1 -1
  392. data/spec/models/bulk_download_summary_spec.rb +1 -1
  393. data/spec/models/chaikin_money_flow_technical_value_spec.rb +1 -1
  394. data/spec/models/commodity_channel_index_technical_value_spec.rb +1 -1
  395. data/spec/models/company_filing_spec.rb +1 -1
  396. data/spec/models/company_initial_public_offering_spec.rb +1 -1
  397. data/spec/models/company_news_spec.rb +1 -1
  398. data/spec/models/company_news_summary_spec.rb +1 -1
  399. data/spec/models/company_spec.rb +1 -1
  400. data/spec/models/company_summary_spec.rb +1 -1
  401. data/spec/models/data_tag_spec.rb +1 -1
  402. data/spec/models/data_tag_summary_spec.rb +1 -1
  403. data/spec/models/detrended_price_oscillator_technical_value_spec.rb +1 -1
  404. data/spec/models/dividend_record_spec.rb +1 -1
  405. data/spec/models/donchian_channel_technical_value_spec.rb +1 -1
  406. data/spec/models/earnings_record_spec.rb +1 -1
  407. data/spec/models/ease_of_movement_technical_value_spec.rb +1 -1
  408. data/spec/models/economic_index_spec.rb +1 -1
  409. data/spec/models/economic_index_summary_spec.rb +1 -1
  410. data/spec/models/etf_analytics_spec.rb +90 -0
  411. data/spec/models/etf_holding_spec.rb +144 -0
  412. data/spec/models/etf_spec.rb +750 -0
  413. data/spec/models/etf_stats_spec.rb +222 -0
  414. data/spec/models/etf_summary_spec.rb +84 -0
  415. data/spec/models/filing_note_filing_spec.rb +1 -1
  416. data/spec/models/filing_note_spec.rb +1 -1
  417. data/spec/models/filing_note_summary_spec.rb +1 -1
  418. data/spec/models/filing_spec.rb +1 -1
  419. data/spec/models/filing_summary_spec.rb +1 -1
  420. data/spec/models/force_index_technical_value_spec.rb +1 -1
  421. data/spec/models/forex_currency_spec.rb +1 -1
  422. data/spec/models/forex_pair_spec.rb +1 -1
  423. data/spec/models/forex_price_spec.rb +1 -1
  424. data/spec/models/fundamental_spec.rb +1 -1
  425. data/spec/models/fundamental_summary_spec.rb +1 -1
  426. data/spec/models/historical_data_spec.rb +1 -1
  427. data/spec/models/ichimoku_kinko_hyo_technical_value_spec.rb +1 -1
  428. data/spec/models/intraday_stock_price_spec.rb +1 -1
  429. data/spec/models/keltner_channel_technical_value_spec.rb +1 -1
  430. data/spec/models/know_sure_thing_technical_value_spec.rb +1 -1
  431. data/spec/models/mass_index_technical_value_spec.rb +1 -1
  432. data/spec/models/money_flow_index_technical_value_spec.rb +1 -1
  433. data/spec/models/moving_average_convergence_divergence_technical_value_spec.rb +1 -1
  434. data/spec/models/municipality_financial_spec.rb +1 -1
  435. data/spec/models/municipality_spec.rb +1 -1
  436. data/spec/models/negative_volume_index_technical_value_spec.rb +1 -1
  437. data/spec/models/on_balance_volume_mean_technical_value_spec.rb +1 -1
  438. data/spec/models/on_balance_volume_technical_value_spec.rb +1 -1
  439. data/spec/models/option_chain_spec.rb +1 -1
  440. data/spec/models/option_price_spec.rb +1 -1
  441. data/spec/models/option_spec.rb +1 -1
  442. data/spec/models/realtime_stock_price_security_spec.rb +1 -1
  443. data/spec/models/realtime_stock_price_spec.rb +7 -1
  444. data/spec/models/relative_strength_index_technical_value_spec.rb +1 -1
  445. data/spec/models/reported_financial_dimension_spec.rb +1 -1
  446. data/spec/models/reported_financial_spec.rb +1 -1
  447. data/spec/models/reported_tag_spec.rb +1 -1
  448. data/spec/models/security_screen_clause_spec.rb +1 -1
  449. data/spec/models/security_screen_group_spec.rb +1 -1
  450. data/spec/models/security_screen_result_data_spec.rb +1 -1
  451. data/spec/models/security_screen_result_spec.rb +1 -1
  452. data/spec/models/security_spec.rb +1 -1
  453. data/spec/models/security_summary_spec.rb +1 -1
  454. data/spec/models/sic_index_spec.rb +1 -1
  455. data/spec/models/simple_moving_average_technical_value_spec.rb +1 -1
  456. data/spec/models/standardized_financial_spec.rb +1 -1
  457. data/spec/models/stochastic_oscillator_technical_value_spec.rb +1 -1
  458. data/spec/models/stock_exchange_spec.rb +1 -1
  459. data/spec/models/stock_market_index_spec.rb +1 -1
  460. data/spec/models/stock_market_index_summary_spec.rb +1 -1
  461. data/spec/models/stock_price_adjustment_spec.rb +1 -1
  462. data/spec/models/stock_price_adjustment_summary_spec.rb +1 -1
  463. data/spec/models/stock_price_spec.rb +1 -1
  464. data/spec/models/stock_price_summary_spec.rb +1 -1
  465. data/spec/models/technical_indicator_spec.rb +1 -1
  466. data/spec/models/triple_exponential_average_technical_value_spec.rb +1 -1
  467. data/spec/models/true_strength_index_technical_value_spec.rb +1 -1
  468. data/spec/models/ultimate_oscillator_technical_value_spec.rb +1 -1
  469. data/spec/models/volume_price_trend_technical_value_spec.rb +1 -1
  470. data/spec/models/volume_weighted_average_price_value_spec.rb +1 -1
  471. data/spec/models/vortex_indicator_technical_value_spec.rb +1 -1
  472. data/spec/models/williams_r_technical_value_spec.rb +1 -1
  473. data/spec/models/zacks_analyst_rating_snapshot_spec.rb +1 -1
  474. data/spec/models/zacks_analyst_rating_spec.rb +1 -1
  475. data/spec/models/zacks_analyst_rating_summary_spec.rb +1 -1
  476. data/spec/models/zacks_eps_estimate_spec.rb +138 -0
  477. data/spec/models/zacks_eps_growth_rate_spec.rb +174 -0
  478. data/spec/models/zacks_eps_surprise_spec.rb +1 -1
  479. data/spec/models/zacks_eps_surprise_summary_spec.rb +1 -1
  480. data/spec/models/zacks_etf_holding_spec.rb +78 -0
  481. data/spec/models/zacks_institutional_holding_company_detail_spec.rb +114 -0
  482. data/spec/models/zacks_institutional_holding_company_summary_spec.rb +54 -0
  483. data/spec/models/zacks_institutional_holding_historical_summary_spec.rb +48 -0
  484. data/spec/models/zacks_institutional_holding_owner_detail_spec.rb +162 -0
  485. data/spec/models/zacks_institutional_holding_owner_summary_spec.rb +48 -0
  486. data/spec/models/zacks_institutional_holding_spec.rb +114 -0
  487. data/spec/models/zacks_long_term_growth_rate_spec.rb +186 -0
  488. data/spec/models/zacks_sales_surprise_spec.rb +1 -1
  489. data/spec/models/zacks_sales_surprise_summary_spec.rb +1 -1
  490. data/spec/models/zacks_target_price_consensus_spec.rb +114 -0
  491. data/spec/spec_helper.rb +1 -1
  492. metadata +134 -7
@@ -0,0 +1,268 @@
1
+ =begin
2
+ #Intrinio API
3
+
4
+ #Welcome to the Intrinio API! Through our Financial Data Marketplace, we offer a wide selection of financial data feed APIs sourced by our own proprietary processes as well as from many data vendors. For a complete API request / response reference please view the [Intrinio API documentation](https://intrinio.com/documentation/api_v2). If you need additional help in using the API, please visit the [Intrinio website](https://intrinio.com) and click on the chat icon in the lower right corner.
5
+
6
+ OpenAPI spec version: 2.15.3
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: unset
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module Intrinio
16
+ # Provides analytics for the Exchange Traded Fund (ETF) including volume, market cap, 52 week high, and 52 week low
17
+ class ETFAnalytics
18
+ # Highest trading price for the security in the preceding 52 weeks
19
+ attr_accessor :fifty_two_week_high
20
+
21
+ # Lowest trading price for the security in the preceding 52 weeks
22
+ attr_accessor :fifty_two_week_low
23
+
24
+ # The total quantity of shares traded on the latest trading day
25
+ attr_accessor :volume_traded
26
+
27
+ # The average quantity of shares traded per day for the last month
28
+ attr_accessor :average_daily_volume_one_month
29
+
30
+ # The average quantity of shares traded per day for the last three months
31
+ attr_accessor :average_daily_volume_three_month
32
+
33
+ # The average quantity of shares traded per day for the last six months
34
+ attr_accessor :average_daily_volume_six_month
35
+
36
+ # The market capitalization for the Exchange Traded Fund (ETF)
37
+ attr_accessor :market_cap
38
+
39
+ # The number of shares outstanding for the Exchange Traded Fund (ETF)
40
+ attr_accessor :shares_outstanding
41
+
42
+ attr_accessor :etf
43
+
44
+
45
+ # Attribute mapping from ruby-style variable name to JSON key.
46
+ def self.attribute_map
47
+ {
48
+ :'fifty_two_week_high' => :'fifty_two_week_high',
49
+ :'fifty_two_week_low' => :'fifty_two_week_low',
50
+ :'volume_traded' => :'volume_traded',
51
+ :'average_daily_volume_one_month' => :'average_daily_volume_one_month',
52
+ :'average_daily_volume_three_month' => :'average_daily_volume_three_month',
53
+ :'average_daily_volume_six_month' => :'average_daily_volume_six_month',
54
+ :'market_cap' => :'market_cap',
55
+ :'shares_outstanding' => :'shares_outstanding',
56
+ :'etf' => :'etf'
57
+ }
58
+ end
59
+
60
+ # Attribute type mapping.
61
+ def self.swagger_types
62
+ {
63
+ :'fifty_two_week_high' => :'Float',
64
+ :'fifty_two_week_low' => :'Float',
65
+ :'volume_traded' => :'Float',
66
+ :'average_daily_volume_one_month' => :'Float',
67
+ :'average_daily_volume_three_month' => :'Float',
68
+ :'average_daily_volume_six_month' => :'Float',
69
+ :'market_cap' => :'Float',
70
+ :'shares_outstanding' => :'Float',
71
+ :'etf' => :'ETFSummary'
72
+ }
73
+ end
74
+
75
+ # Initializes the object
76
+ # @param [Hash] attributes Model attributes in the form of hash
77
+ def initialize(attributes = {})
78
+ return unless attributes.is_a?(Hash)
79
+
80
+ # convert string to symbol for hash key
81
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
82
+
83
+ if attributes.has_key?(:'fifty_two_week_high')
84
+ self.fifty_two_week_high = attributes[:'fifty_two_week_high']
85
+ end
86
+
87
+ if attributes.has_key?(:'fifty_two_week_low')
88
+ self.fifty_two_week_low = attributes[:'fifty_two_week_low']
89
+ end
90
+
91
+ if attributes.has_key?(:'volume_traded')
92
+ self.volume_traded = attributes[:'volume_traded']
93
+ end
94
+
95
+ if attributes.has_key?(:'average_daily_volume_one_month')
96
+ self.average_daily_volume_one_month = attributes[:'average_daily_volume_one_month']
97
+ end
98
+
99
+ if attributes.has_key?(:'average_daily_volume_three_month')
100
+ self.average_daily_volume_three_month = attributes[:'average_daily_volume_three_month']
101
+ end
102
+
103
+ if attributes.has_key?(:'average_daily_volume_six_month')
104
+ self.average_daily_volume_six_month = attributes[:'average_daily_volume_six_month']
105
+ end
106
+
107
+ if attributes.has_key?(:'market_cap')
108
+ self.market_cap = attributes[:'market_cap']
109
+ end
110
+
111
+ if attributes.has_key?(:'shares_outstanding')
112
+ self.shares_outstanding = attributes[:'shares_outstanding']
113
+ end
114
+
115
+ if attributes.has_key?(:'etf')
116
+ self.etf = attributes[:'etf']
117
+ end
118
+
119
+ end
120
+
121
+ # Show invalid properties with the reasons. Usually used together with valid?
122
+ # @return Array for valid properties with the reasons
123
+ def list_invalid_properties
124
+ invalid_properties = Array.new
125
+ return invalid_properties
126
+ end
127
+
128
+ # Check to see if the all the properties in the model are valid
129
+ # @return true if the model is valid
130
+ def valid?
131
+ return true
132
+ end
133
+
134
+ # Checks equality by comparing each attribute.
135
+ # @param [Object] Object to be compared
136
+ def ==(o)
137
+ return true if self.equal?(o)
138
+ self.class == o.class &&
139
+ fifty_two_week_high == o.fifty_two_week_high &&
140
+ fifty_two_week_low == o.fifty_two_week_low &&
141
+ volume_traded == o.volume_traded &&
142
+ average_daily_volume_one_month == o.average_daily_volume_one_month &&
143
+ average_daily_volume_three_month == o.average_daily_volume_three_month &&
144
+ average_daily_volume_six_month == o.average_daily_volume_six_month &&
145
+ market_cap == o.market_cap &&
146
+ shares_outstanding == o.shares_outstanding &&
147
+ etf == o.etf
148
+ end
149
+
150
+ # @see the `==` method
151
+ # @param [Object] Object to be compared
152
+ def eql?(o)
153
+ self == o
154
+ end
155
+
156
+ # Calculates hash code according to all attributes.
157
+ # @return [Fixnum] Hash code
158
+ def hash
159
+ [fifty_two_week_high, fifty_two_week_low, volume_traded, average_daily_volume_one_month, average_daily_volume_three_month, average_daily_volume_six_month, market_cap, shares_outstanding, etf].hash
160
+ end
161
+
162
+ # Builds the object from hash
163
+ # @param [Hash] attributes Model attributes in the form of hash
164
+ # @return [Object] Returns the model itself
165
+ def build_from_hash(attributes)
166
+ return nil unless attributes.is_a?(Hash)
167
+ self.class.swagger_types.each_pair do |key, type|
168
+ if type =~ /\AArray<(.*)>/i
169
+ # check to ensure the input is an array given that the the attribute
170
+ # is documented as an array but the input is not
171
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
172
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
173
+ end
174
+ elsif !attributes[self.class.attribute_map[key]].nil?
175
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
176
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
177
+ end
178
+
179
+ self
180
+ end
181
+
182
+ # Deserializes the data based on type
183
+ # @param string type Data type
184
+ # @param string value Value to be deserialized
185
+ # @return [Object] Deserialized data
186
+ def _deserialize(type, value)
187
+ case type.to_sym
188
+ when :DateTime
189
+ DateTime.parse(value)
190
+ when :Date
191
+ Date.parse(value)
192
+ when :String
193
+ value.to_s
194
+ when :Integer
195
+ value.to_i
196
+ when :Float
197
+ value.to_f
198
+ when :BOOLEAN
199
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
200
+ true
201
+ else
202
+ false
203
+ end
204
+ when :Object
205
+ # generic object (usually a Hash), return directly
206
+ value
207
+ when /\AArray<(?<inner_type>.+)>\z/
208
+ inner_type = Regexp.last_match[:inner_type]
209
+ value.map { |v| _deserialize(inner_type, v) }
210
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
211
+ k_type = Regexp.last_match[:k_type]
212
+ v_type = Regexp.last_match[:v_type]
213
+ {}.tap do |hash|
214
+ value.each do |k, v|
215
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
216
+ end
217
+ end
218
+ else # model
219
+ temp_model = Intrinio.const_get(type).new
220
+ temp_model.build_from_hash(value)
221
+ end
222
+ end
223
+
224
+ # Returns the string representation of the object
225
+ # @return [String] String presentation of the object
226
+ def to_s
227
+ to_hash.to_s
228
+ end
229
+
230
+ # to_body is an alias to to_hash (backward compatibility)
231
+ # @return [Hash] Returns the object in the form of hash
232
+ def to_body
233
+ to_hash
234
+ end
235
+
236
+ # Returns the object in the form of hash
237
+ # @return [Hash] Returns the object in the form of hash
238
+ def to_hash
239
+ hash = {}
240
+ self.class.attribute_map.each_pair do |attr, param|
241
+ value = self.send(attr)
242
+ next if value.nil?
243
+ hash[param] = _to_hash(value)
244
+ end
245
+ hash
246
+ end
247
+
248
+ # Outputs non-array value in the form of hash
249
+ # For object, use to_hash. Otherwise, just return the value
250
+ # @param [Object] value Any valid value
251
+ # @return [Hash] Returns the value in the form of hash
252
+ def _to_hash(value)
253
+ if value.is_a?(Array)
254
+ value.compact.map{ |v| _to_hash(v) }
255
+ elsif value.is_a?(Hash)
256
+ {}.tap do |hash|
257
+ value.each { |k, v| hash[k] = _to_hash(v) }
258
+ end
259
+ elsif value.respond_to? :to_hash
260
+ value.to_hash
261
+ else
262
+ value
263
+ end
264
+ end
265
+
266
+ end
267
+
268
+ end
@@ -0,0 +1,359 @@
1
+ =begin
2
+ #Intrinio API
3
+
4
+ #Welcome to the Intrinio API! Through our Financial Data Marketplace, we offer a wide selection of financial data feed APIs sourced by our own proprietary processes as well as from many data vendors. For a complete API request / response reference please view the [Intrinio API documentation](https://intrinio.com/documentation/api_v2). If you need additional help in using the API, please visit the [Intrinio website](https://intrinio.com) and click on the chat icon in the lower right corner.
5
+
6
+ OpenAPI spec version: 2.15.3
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: unset
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module Intrinio
16
+ # The Exchange Traded Fund (ETF) holding data
17
+ class ETFHolding
18
+ # The date on which the holding and their weights correspond
19
+ attr_accessor :as_of_date
20
+
21
+ # The common name for the holding
22
+ attr_accessor :name
23
+
24
+ # The common exchange ticker for the holding
25
+ attr_accessor :ticker
26
+
27
+ # The type of instrument for this holding. Examples (Bond = 'BOND', Equity = 'EQUI', Options = 'OPTN')
28
+ attr_accessor :type
29
+
30
+ # The OpenFIGI ticker for the holding
31
+ attr_accessor :composite_figi
32
+
33
+ # International Securities Identification Number (ISIN) for the holding
34
+ attr_accessor :isin
35
+
36
+ # Reuters Instrument Code (RIC) for the holding
37
+ attr_accessor :ric
38
+
39
+ # Stock Exchange Daily Official List (SEDOL) for the holding
40
+ attr_accessor :sedol
41
+
42
+ # Face value of the debt security, if available
43
+ attr_accessor :face
44
+
45
+ # Coupon rate of the debt security, if available
46
+ attr_accessor :coupon
47
+
48
+ # The market value of this holding in the ETF as of the `as_of_date`
49
+ attr_accessor :market_value_held
50
+
51
+ # Notional value of derivatives contracts held in the Exchange Traded Fund (ETF) or Exchange Traded Note (ETN)
52
+ attr_accessor :notional_value
53
+
54
+ # Maturity date for the debt security, if available
55
+ attr_accessor :maturity
56
+
57
+ # Number of units of the security held if available
58
+ attr_accessor :quantity_held
59
+
60
+ # Fraction of the funds market value held
61
+ attr_accessor :weighting
62
+
63
+ # The unit of the `quanity_held` field. Examples ('oz', 'shares', 'contracts')
64
+ attr_accessor :quantity_units
65
+
66
+ # Number of units of the security held per units of shares outstanding of the Exchange Traded Fund (ETF), if available
67
+ attr_accessor :quantity_per_share
68
+
69
+ # Expiry date for the futures contract held in the Exchange Traded Fund (ETF) or Exchange Traded Note (ETN)
70
+ attr_accessor :contract_expiry_date
71
+
72
+
73
+ # Attribute mapping from ruby-style variable name to JSON key.
74
+ def self.attribute_map
75
+ {
76
+ :'as_of_date' => :'as_of_date',
77
+ :'name' => :'name',
78
+ :'ticker' => :'ticker',
79
+ :'type' => :'type',
80
+ :'composite_figi' => :'composite_figi',
81
+ :'isin' => :'isin',
82
+ :'ric' => :'ric',
83
+ :'sedol' => :'sedol',
84
+ :'face' => :'face',
85
+ :'coupon' => :'coupon',
86
+ :'market_value_held' => :'market_value_held',
87
+ :'notional_value' => :'notional_value',
88
+ :'maturity' => :'maturity',
89
+ :'quantity_held' => :'quantity_held',
90
+ :'weighting' => :'weighting',
91
+ :'quantity_units' => :'quantity_units',
92
+ :'quantity_per_share' => :'quantity_per_share',
93
+ :'contract_expiry_date' => :'contract_expiry_date'
94
+ }
95
+ end
96
+
97
+ # Attribute type mapping.
98
+ def self.swagger_types
99
+ {
100
+ :'as_of_date' => :'Date',
101
+ :'name' => :'String',
102
+ :'ticker' => :'String',
103
+ :'type' => :'String',
104
+ :'composite_figi' => :'String',
105
+ :'isin' => :'String',
106
+ :'ric' => :'String',
107
+ :'sedol' => :'String',
108
+ :'face' => :'Float',
109
+ :'coupon' => :'Float',
110
+ :'market_value_held' => :'Float',
111
+ :'notional_value' => :'Float',
112
+ :'maturity' => :'Date',
113
+ :'quantity_held' => :'Float',
114
+ :'weighting' => :'Float',
115
+ :'quantity_units' => :'Float',
116
+ :'quantity_per_share' => :'Float',
117
+ :'contract_expiry_date' => :'Date'
118
+ }
119
+ end
120
+
121
+ # Initializes the object
122
+ # @param [Hash] attributes Model attributes in the form of hash
123
+ def initialize(attributes = {})
124
+ return unless attributes.is_a?(Hash)
125
+
126
+ # convert string to symbol for hash key
127
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
128
+
129
+ if attributes.has_key?(:'as_of_date')
130
+ self.as_of_date = attributes[:'as_of_date']
131
+ end
132
+
133
+ if attributes.has_key?(:'name')
134
+ self.name = attributes[:'name']
135
+ end
136
+
137
+ if attributes.has_key?(:'ticker')
138
+ self.ticker = attributes[:'ticker']
139
+ end
140
+
141
+ if attributes.has_key?(:'type')
142
+ self.type = attributes[:'type']
143
+ end
144
+
145
+ if attributes.has_key?(:'composite_figi')
146
+ self.composite_figi = attributes[:'composite_figi']
147
+ end
148
+
149
+ if attributes.has_key?(:'isin')
150
+ self.isin = attributes[:'isin']
151
+ end
152
+
153
+ if attributes.has_key?(:'ric')
154
+ self.ric = attributes[:'ric']
155
+ end
156
+
157
+ if attributes.has_key?(:'sedol')
158
+ self.sedol = attributes[:'sedol']
159
+ end
160
+
161
+ if attributes.has_key?(:'face')
162
+ self.face = attributes[:'face']
163
+ end
164
+
165
+ if attributes.has_key?(:'coupon')
166
+ self.coupon = attributes[:'coupon']
167
+ end
168
+
169
+ if attributes.has_key?(:'market_value_held')
170
+ self.market_value_held = attributes[:'market_value_held']
171
+ end
172
+
173
+ if attributes.has_key?(:'notional_value')
174
+ self.notional_value = attributes[:'notional_value']
175
+ end
176
+
177
+ if attributes.has_key?(:'maturity')
178
+ self.maturity = attributes[:'maturity']
179
+ end
180
+
181
+ if attributes.has_key?(:'quantity_held')
182
+ self.quantity_held = attributes[:'quantity_held']
183
+ end
184
+
185
+ if attributes.has_key?(:'weighting')
186
+ self.weighting = attributes[:'weighting']
187
+ end
188
+
189
+ if attributes.has_key?(:'quantity_units')
190
+ self.quantity_units = attributes[:'quantity_units']
191
+ end
192
+
193
+ if attributes.has_key?(:'quantity_per_share')
194
+ self.quantity_per_share = attributes[:'quantity_per_share']
195
+ end
196
+
197
+ if attributes.has_key?(:'contract_expiry_date')
198
+ self.contract_expiry_date = attributes[:'contract_expiry_date']
199
+ end
200
+
201
+ end
202
+
203
+ # Show invalid properties with the reasons. Usually used together with valid?
204
+ # @return Array for valid properties with the reasons
205
+ def list_invalid_properties
206
+ invalid_properties = Array.new
207
+ return invalid_properties
208
+ end
209
+
210
+ # Check to see if the all the properties in the model are valid
211
+ # @return true if the model is valid
212
+ def valid?
213
+ return true
214
+ end
215
+
216
+ # Checks equality by comparing each attribute.
217
+ # @param [Object] Object to be compared
218
+ def ==(o)
219
+ return true if self.equal?(o)
220
+ self.class == o.class &&
221
+ as_of_date == o.as_of_date &&
222
+ name == o.name &&
223
+ ticker == o.ticker &&
224
+ type == o.type &&
225
+ composite_figi == o.composite_figi &&
226
+ isin == o.isin &&
227
+ ric == o.ric &&
228
+ sedol == o.sedol &&
229
+ face == o.face &&
230
+ coupon == o.coupon &&
231
+ market_value_held == o.market_value_held &&
232
+ notional_value == o.notional_value &&
233
+ maturity == o.maturity &&
234
+ quantity_held == o.quantity_held &&
235
+ weighting == o.weighting &&
236
+ quantity_units == o.quantity_units &&
237
+ quantity_per_share == o.quantity_per_share &&
238
+ contract_expiry_date == o.contract_expiry_date
239
+ end
240
+
241
+ # @see the `==` method
242
+ # @param [Object] Object to be compared
243
+ def eql?(o)
244
+ self == o
245
+ end
246
+
247
+ # Calculates hash code according to all attributes.
248
+ # @return [Fixnum] Hash code
249
+ def hash
250
+ [as_of_date, name, ticker, type, composite_figi, isin, ric, sedol, face, coupon, market_value_held, notional_value, maturity, quantity_held, weighting, quantity_units, quantity_per_share, contract_expiry_date].hash
251
+ end
252
+
253
+ # Builds the object from hash
254
+ # @param [Hash] attributes Model attributes in the form of hash
255
+ # @return [Object] Returns the model itself
256
+ def build_from_hash(attributes)
257
+ return nil unless attributes.is_a?(Hash)
258
+ self.class.swagger_types.each_pair do |key, type|
259
+ if type =~ /\AArray<(.*)>/i
260
+ # check to ensure the input is an array given that the the attribute
261
+ # is documented as an array but the input is not
262
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
263
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
264
+ end
265
+ elsif !attributes[self.class.attribute_map[key]].nil?
266
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
267
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
268
+ end
269
+
270
+ self
271
+ end
272
+
273
+ # Deserializes the data based on type
274
+ # @param string type Data type
275
+ # @param string value Value to be deserialized
276
+ # @return [Object] Deserialized data
277
+ def _deserialize(type, value)
278
+ case type.to_sym
279
+ when :DateTime
280
+ DateTime.parse(value)
281
+ when :Date
282
+ Date.parse(value)
283
+ when :String
284
+ value.to_s
285
+ when :Integer
286
+ value.to_i
287
+ when :Float
288
+ value.to_f
289
+ when :BOOLEAN
290
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
291
+ true
292
+ else
293
+ false
294
+ end
295
+ when :Object
296
+ # generic object (usually a Hash), return directly
297
+ value
298
+ when /\AArray<(?<inner_type>.+)>\z/
299
+ inner_type = Regexp.last_match[:inner_type]
300
+ value.map { |v| _deserialize(inner_type, v) }
301
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
302
+ k_type = Regexp.last_match[:k_type]
303
+ v_type = Regexp.last_match[:v_type]
304
+ {}.tap do |hash|
305
+ value.each do |k, v|
306
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
307
+ end
308
+ end
309
+ else # model
310
+ temp_model = Intrinio.const_get(type).new
311
+ temp_model.build_from_hash(value)
312
+ end
313
+ end
314
+
315
+ # Returns the string representation of the object
316
+ # @return [String] String presentation of the object
317
+ def to_s
318
+ to_hash.to_s
319
+ end
320
+
321
+ # to_body is an alias to to_hash (backward compatibility)
322
+ # @return [Hash] Returns the object in the form of hash
323
+ def to_body
324
+ to_hash
325
+ end
326
+
327
+ # Returns the object in the form of hash
328
+ # @return [Hash] Returns the object in the form of hash
329
+ def to_hash
330
+ hash = {}
331
+ self.class.attribute_map.each_pair do |attr, param|
332
+ value = self.send(attr)
333
+ next if value.nil?
334
+ hash[param] = _to_hash(value)
335
+ end
336
+ hash
337
+ end
338
+
339
+ # Outputs non-array value in the form of hash
340
+ # For object, use to_hash. Otherwise, just return the value
341
+ # @param [Object] value Any valid value
342
+ # @return [Hash] Returns the value in the form of hash
343
+ def _to_hash(value)
344
+ if value.is_a?(Array)
345
+ value.compact.map{ |v| _to_hash(v) }
346
+ elsif value.is_a?(Hash)
347
+ {}.tap do |hash|
348
+ value.each { |k, v| hash[k] = _to_hash(v) }
349
+ end
350
+ elsif value.respond_to? :to_hash
351
+ value.to_hash
352
+ else
353
+ value
354
+ end
355
+ end
356
+
357
+ end
358
+
359
+ end