intrinio-sdk 2.1.0 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (403) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +168 -2
  3. data/docs/AccumulationDistributionIndexTechnicalValue.md +9 -0
  4. data/docs/ApiResponseCryptoBook.md +12 -0
  5. data/docs/ApiResponseCryptoBookAsks.md +11 -0
  6. data/docs/ApiResponseCryptoBookBids.md +11 -0
  7. data/docs/ApiResponseCryptoCurrencies.md +8 -0
  8. data/docs/ApiResponseCryptoExchanges.md +8 -0
  9. data/docs/ApiResponseCryptoPairs.md +9 -0
  10. data/docs/ApiResponseCryptoPrices.md +12 -0
  11. data/docs/ApiResponseCryptoSnapshot.md +10 -0
  12. data/docs/ApiResponseCryptoStats.md +8 -0
  13. data/docs/ApiResponseOptionPrices.md +10 -0
  14. data/docs/ApiResponseOptions.md +9 -0
  15. data/docs/ApiResponseOptionsChain.md +8 -0
  16. data/docs/ApiResponseOptionsExpirations.md +8 -0
  17. data/docs/ApiResponseSecurityAccumulationDistributionIndex.md +11 -0
  18. data/docs/ApiResponseSecurityAverageDailyTradingVolume.md +11 -0
  19. data/docs/ApiResponseSecurityAverageDirectionalIndex.md +11 -0
  20. data/docs/ApiResponseSecurityAverageTrueRange.md +11 -0
  21. data/docs/ApiResponseSecurityAwesomeOscillator.md +11 -0
  22. data/docs/ApiResponseSecurityBollingerBands.md +11 -0
  23. data/docs/ApiResponseSecurityChaikinMoneyFlow.md +11 -0
  24. data/docs/ApiResponseSecurityCommodityChannelIndex.md +11 -0
  25. data/docs/ApiResponseSecurityDetrendedPriceOscillator.md +11 -0
  26. data/docs/ApiResponseSecurityDonchianChannel.md +11 -0
  27. data/docs/ApiResponseSecurityEaseOfMovement.md +11 -0
  28. data/docs/ApiResponseSecurityForceIndex.md +11 -0
  29. data/docs/ApiResponseSecurityIchimokuKinkoHyo.md +11 -0
  30. data/docs/ApiResponseSecurityKeltnerChannel.md +11 -0
  31. data/docs/ApiResponseSecurityKnowSureThing.md +11 -0
  32. data/docs/ApiResponseSecurityMassIndex.md +11 -0
  33. data/docs/ApiResponseSecurityMoneyFlowIndex.md +11 -0
  34. data/docs/ApiResponseSecurityMovingAverageConvergenceDivergence.md +11 -0
  35. data/docs/ApiResponseSecurityNegativeVolumeIndex.md +11 -0
  36. data/docs/ApiResponseSecurityOnBalanceVolume.md +11 -0
  37. data/docs/ApiResponseSecurityOnBalanceVolumeMean.md +11 -0
  38. data/docs/ApiResponseSecurityRelativeStrengthIndex.md +11 -0
  39. data/docs/ApiResponseSecuritySimpleMovingAverage.md +11 -0
  40. data/docs/ApiResponseSecurityStochasticOscillator.md +11 -0
  41. data/docs/ApiResponseSecurityTripleExponentialAverage.md +11 -0
  42. data/docs/ApiResponseSecurityTrueStrengthIndex.md +11 -0
  43. data/docs/ApiResponseSecurityUltimateOscillator.md +11 -0
  44. data/docs/ApiResponseSecurityVolumePriceTrend.md +11 -0
  45. data/docs/ApiResponseSecurityVolumeWeightedAveragePrice.md +11 -0
  46. data/docs/ApiResponseSecurityVortexIndicator.md +11 -0
  47. data/docs/ApiResponseSecurityWilliamsR.md +11 -0
  48. data/docs/AverageDailyTradingVolumeTechnicalValue.md +9 -0
  49. data/docs/AverageDirectionalIndexTechnicalValue.md +11 -0
  50. data/docs/AverageTrueRangeTechnicalValue.md +9 -0
  51. data/docs/AwesomeOscillatorTechnicalValue.md +9 -0
  52. data/docs/BollingerBandsTechnicalValue.md +11 -0
  53. data/docs/ChaikinMoneyFlowTechnicalValue.md +9 -0
  54. data/docs/CommodityChannelIndexTechnicalValue.md +9 -0
  55. data/docs/CompanyApi.md +15 -15
  56. data/docs/CryptoApi.md +433 -0
  57. data/docs/CryptoAsk.md +9 -0
  58. data/docs/CryptoBid.md +9 -0
  59. data/docs/CryptoBookEntry.md +9 -0
  60. data/docs/CryptoCurrency.md +12 -0
  61. data/docs/CryptoExchange.md +13 -0
  62. data/docs/CryptoExchangeSummary.md +9 -0
  63. data/docs/CryptoPair.md +15 -0
  64. data/docs/CryptoPairSummary.md +9 -0
  65. data/docs/CryptoPrice.md +13 -0
  66. data/docs/CryptoSnapshot.md +22 -0
  67. data/docs/CryptoStat.md +15 -0
  68. data/docs/DataPointApi.md +10 -10
  69. data/docs/DetrendedPriceOscillatorTechnicalValue.md +9 -0
  70. data/docs/DonchianChannelTechnicalValue.md +10 -0
  71. data/docs/EaseOfMovementTechnicalValue.md +9 -0
  72. data/docs/ForceIndexTechnicalValue.md +9 -0
  73. data/docs/FundamentalsApi.md +4 -4
  74. data/docs/HistoricalDataApi.md +7 -5
  75. data/docs/IchimokuKinkoHyoTechnicalValue.md +13 -0
  76. data/docs/KeltnerChannelTechnicalValue.md +11 -0
  77. data/docs/KnowSureThingTechnicalValue.md +9 -0
  78. data/docs/MassIndexTechnicalValue.md +9 -0
  79. data/docs/MoneyFlowIndexTechnicalValue.md +9 -0
  80. data/docs/MovingAverageConvergenceDivergenceTechnicalValue.md +11 -0
  81. data/docs/NegativeVolumeIndexTechnicalValue.md +9 -0
  82. data/docs/OnBalanceVolumeMeanTechnicalValue.md +9 -0
  83. data/docs/OnBalanceVolumeTechnicalValue.md +9 -0
  84. data/docs/Option.md +13 -0
  85. data/docs/OptionChain.md +9 -0
  86. data/docs/OptionPrice.md +21 -0
  87. data/docs/OptionsApi.md +225 -0
  88. data/docs/RelativeStrengthIndexTechnicalValue.md +9 -0
  89. data/docs/ReportedFinancial.md +1 -0
  90. data/docs/ReportedFinancialDimension.md +9 -0
  91. data/docs/Security.md +1 -0
  92. data/docs/SecurityApi.md +1717 -22
  93. data/docs/SimpleMovingAverageTechnicalValue.md +9 -0
  94. data/docs/StochasticOscillatorTechnicalValue.md +10 -0
  95. data/docs/StockExchangeApi.md +6 -6
  96. data/docs/TechnicalApi.md +1701 -0
  97. data/docs/TechnicalIndicator.md +9 -0
  98. data/docs/TripleExponentialAverageTechnicalValue.md +9 -0
  99. data/docs/TrueStrengthIndexTechnicalValue.md +9 -0
  100. data/docs/UltimateOscillatorTechnicalValue.md +9 -0
  101. data/docs/VolumePriceTrendTechnicalValue.md +9 -0
  102. data/docs/VolumeWeightedAveragePriceValue.md +9 -0
  103. data/docs/VortexIndicatorTechnicalValue.md +10 -0
  104. data/docs/WilliamsRTechnicalValue.md +9 -0
  105. data/intrinio-sdk.gemspec +1 -1
  106. data/lib/intrinio-sdk.rb +95 -1
  107. data/lib/intrinio-sdk/api/company_api.rb +19 -19
  108. data/lib/intrinio-sdk/api/crypto_api.rb +560 -0
  109. data/lib/intrinio-sdk/api/data_point_api.rb +13 -13
  110. data/lib/intrinio-sdk/api/data_tag_api.rb +1 -1
  111. data/lib/intrinio-sdk/api/filing_api.rb +1 -1
  112. data/lib/intrinio-sdk/api/forex_api.rb +1 -1
  113. data/lib/intrinio-sdk/api/fundamentals_api.rb +5 -5
  114. data/lib/intrinio-sdk/api/historical_data_api.rb +13 -7
  115. data/lib/intrinio-sdk/api/index_api.rb +1 -1
  116. data/lib/intrinio-sdk/api/municipality_api.rb +1 -1
  117. data/lib/intrinio-sdk/api/options_api.rb +325 -0
  118. data/lib/intrinio-sdk/api/security_api.rb +2472 -21
  119. data/lib/intrinio-sdk/api/stock_exchange_api.rb +3 -3
  120. data/lib/intrinio-sdk/api/technical_api.rb +2474 -0
  121. data/lib/intrinio-sdk/api_client.rb +1 -1
  122. data/lib/intrinio-sdk/api_error.rb +1 -1
  123. data/lib/intrinio-sdk/configuration.rb +1 -1
  124. data/lib/intrinio-sdk/models/accumulation_distribution_index_technical_value.rb +199 -0
  125. data/lib/intrinio-sdk/models/api_response_companies.rb +1 -1
  126. data/lib/intrinio-sdk/models/api_response_companies_search.rb +1 -1
  127. data/lib/intrinio-sdk/models/api_response_company_filings.rb +1 -1
  128. data/lib/intrinio-sdk/models/api_response_company_fundamentals.rb +1 -1
  129. data/lib/intrinio-sdk/models/api_response_company_historical_data.rb +1 -1
  130. data/lib/intrinio-sdk/models/api_response_company_news.rb +1 -1
  131. data/lib/intrinio-sdk/models/api_response_company_securities.rb +1 -1
  132. data/lib/intrinio-sdk/models/api_response_crypto_book.rb +231 -0
  133. data/lib/intrinio-sdk/models/api_response_crypto_book_asks.rb +219 -0
  134. data/lib/intrinio-sdk/models/api_response_crypto_book_bids.rb +219 -0
  135. data/lib/intrinio-sdk/models/api_response_crypto_currencies.rb +191 -0
  136. data/lib/intrinio-sdk/models/api_response_crypto_exchanges.rb +191 -0
  137. data/lib/intrinio-sdk/models/api_response_crypto_pairs.rb +201 -0
  138. data/lib/intrinio-sdk/models/api_response_crypto_prices.rb +229 -0
  139. data/lib/intrinio-sdk/models/api_response_crypto_snapshot.rb +206 -0
  140. data/lib/intrinio-sdk/models/api_response_crypto_stats.rb +191 -0
  141. data/lib/intrinio-sdk/models/api_response_data_tags.rb +1 -1
  142. data/lib/intrinio-sdk/models/api_response_data_tags_search.rb +1 -1
  143. data/lib/intrinio-sdk/models/api_response_economic_index_historical_data.rb +1 -1
  144. data/lib/intrinio-sdk/models/api_response_economic_indices.rb +1 -1
  145. data/lib/intrinio-sdk/models/api_response_economic_indices_search.rb +1 -1
  146. data/lib/intrinio-sdk/models/api_response_filing_notes.rb +1 -1
  147. data/lib/intrinio-sdk/models/api_response_filing_notes_search.rb +1 -1
  148. data/lib/intrinio-sdk/models/api_response_filings.rb +1 -1
  149. data/lib/intrinio-sdk/models/api_response_forex_currencies.rb +1 -1
  150. data/lib/intrinio-sdk/models/api_response_forex_pairs.rb +1 -1
  151. data/lib/intrinio-sdk/models/api_response_forex_prices.rb +1 -1
  152. data/lib/intrinio-sdk/models/api_response_historical_data.rb +1 -1
  153. data/lib/intrinio-sdk/models/api_response_municipalities.rb +1 -1
  154. data/lib/intrinio-sdk/models/api_response_municipalitiy_financials.rb +1 -1
  155. data/lib/intrinio-sdk/models/api_response_news.rb +1 -1
  156. data/lib/intrinio-sdk/models/api_response_option_prices.rb +210 -0
  157. data/lib/intrinio-sdk/models/api_response_options.rb +201 -0
  158. data/lib/intrinio-sdk/models/api_response_options_chain.rb +191 -0
  159. data/lib/intrinio-sdk/models/api_response_options_expirations.rb +191 -0
  160. data/lib/intrinio-sdk/models/api_response_reported_financials.rb +1 -1
  161. data/lib/intrinio-sdk/models/api_response_securities.rb +1 -1
  162. data/lib/intrinio-sdk/models/api_response_securities_search.rb +1 -1
  163. data/lib/intrinio-sdk/models/api_response_security_accumulation_distribution_index.rb +220 -0
  164. data/lib/intrinio-sdk/models/api_response_security_average_daily_trading_volume.rb +220 -0
  165. data/lib/intrinio-sdk/models/api_response_security_average_directional_index.rb +220 -0
  166. data/lib/intrinio-sdk/models/api_response_security_average_true_range.rb +220 -0
  167. data/lib/intrinio-sdk/models/api_response_security_awesome_oscillator.rb +220 -0
  168. data/lib/intrinio-sdk/models/api_response_security_bollinger_bands.rb +220 -0
  169. data/lib/intrinio-sdk/models/api_response_security_chaikin_money_flow.rb +220 -0
  170. data/lib/intrinio-sdk/models/api_response_security_commodity_channel_index.rb +220 -0
  171. data/lib/intrinio-sdk/models/api_response_security_detrended_price_oscillator.rb +220 -0
  172. data/lib/intrinio-sdk/models/api_response_security_donchian_channel.rb +220 -0
  173. data/lib/intrinio-sdk/models/api_response_security_ease_of_movement.rb +220 -0
  174. data/lib/intrinio-sdk/models/api_response_security_force_index.rb +220 -0
  175. data/lib/intrinio-sdk/models/api_response_security_historical_data.rb +1 -1
  176. data/lib/intrinio-sdk/models/api_response_security_ichimoku_kinko_hyo.rb +220 -0
  177. data/lib/intrinio-sdk/models/api_response_security_intraday_prices.rb +1 -1
  178. data/lib/intrinio-sdk/models/api_response_security_keltner_channel.rb +220 -0
  179. data/lib/intrinio-sdk/models/api_response_security_know_sure_thing.rb +220 -0
  180. data/lib/intrinio-sdk/models/api_response_security_mass_index.rb +220 -0
  181. data/lib/intrinio-sdk/models/api_response_security_money_flow_index.rb +220 -0
  182. data/lib/intrinio-sdk/models/api_response_security_moving_average_convergence_divergence.rb +220 -0
  183. data/lib/intrinio-sdk/models/api_response_security_negative_volume_index.rb +220 -0
  184. data/lib/intrinio-sdk/models/api_response_security_on_balance_volume.rb +220 -0
  185. data/lib/intrinio-sdk/models/api_response_security_on_balance_volume_mean.rb +220 -0
  186. data/lib/intrinio-sdk/models/api_response_security_relative_strength_index.rb +220 -0
  187. data/lib/intrinio-sdk/models/api_response_security_simple_moving_average.rb +220 -0
  188. data/lib/intrinio-sdk/models/api_response_security_stochastic_oscillator.rb +220 -0
  189. data/lib/intrinio-sdk/models/api_response_security_stock_price_adjustments.rb +1 -1
  190. data/lib/intrinio-sdk/models/api_response_security_stock_prices.rb +1 -1
  191. data/lib/intrinio-sdk/models/api_response_security_triple_exponential_average.rb +220 -0
  192. data/lib/intrinio-sdk/models/api_response_security_true_strength_index.rb +220 -0
  193. data/lib/intrinio-sdk/models/api_response_security_ultimate_oscillator.rb +220 -0
  194. data/lib/intrinio-sdk/models/api_response_security_volume_price_trend.rb +220 -0
  195. data/lib/intrinio-sdk/models/api_response_security_volume_weighted_average_price.rb +220 -0
  196. data/lib/intrinio-sdk/models/api_response_security_vortex_indicator.rb +220 -0
  197. data/lib/intrinio-sdk/models/api_response_security_williams_r.rb +220 -0
  198. data/lib/intrinio-sdk/models/api_response_sic_index_historical_data.rb +1 -1
  199. data/lib/intrinio-sdk/models/api_response_sic_indices.rb +1 -1
  200. data/lib/intrinio-sdk/models/api_response_sic_indices_search.rb +1 -1
  201. data/lib/intrinio-sdk/models/api_response_standardized_financials.rb +1 -1
  202. data/lib/intrinio-sdk/models/api_response_stock_exchange_realtime_stock_prices.rb +1 -1
  203. data/lib/intrinio-sdk/models/api_response_stock_exchange_securities.rb +1 -1
  204. data/lib/intrinio-sdk/models/api_response_stock_exchange_stock_price_adjustments.rb +1 -1
  205. data/lib/intrinio-sdk/models/api_response_stock_exchange_stock_prices.rb +1 -1
  206. data/lib/intrinio-sdk/models/api_response_stock_exchanges.rb +1 -1
  207. data/lib/intrinio-sdk/models/api_response_stock_market_index_historical_data.rb +1 -1
  208. data/lib/intrinio-sdk/models/api_response_stock_market_indices.rb +1 -1
  209. data/lib/intrinio-sdk/models/api_response_stock_market_indices_search.rb +1 -1
  210. data/lib/intrinio-sdk/models/average_daily_trading_volume_technical_value.rb +199 -0
  211. data/lib/intrinio-sdk/models/average_directional_index_technical_value.rb +219 -0
  212. data/lib/intrinio-sdk/models/average_true_range_technical_value.rb +199 -0
  213. data/lib/intrinio-sdk/models/awesome_oscillator_technical_value.rb +199 -0
  214. data/lib/intrinio-sdk/models/bollinger_bands_technical_value.rb +219 -0
  215. data/lib/intrinio-sdk/models/chaikin_money_flow_technical_value.rb +199 -0
  216. data/lib/intrinio-sdk/models/commodity_channel_index_technical_value.rb +199 -0
  217. data/lib/intrinio-sdk/models/company.rb +1 -1
  218. data/lib/intrinio-sdk/models/company_filing.rb +1 -1
  219. data/lib/intrinio-sdk/models/company_news.rb +1 -1
  220. data/lib/intrinio-sdk/models/company_news_summary.rb +1 -1
  221. data/lib/intrinio-sdk/models/company_summary.rb +1 -1
  222. data/lib/intrinio-sdk/models/crypto_ask.rb +199 -0
  223. data/lib/intrinio-sdk/models/crypto_bid.rb +199 -0
  224. data/lib/intrinio-sdk/models/crypto_book_entry.rb +199 -0
  225. data/lib/intrinio-sdk/models/crypto_currency.rb +229 -0
  226. data/lib/intrinio-sdk/models/crypto_exchange.rb +239 -0
  227. data/lib/intrinio-sdk/models/crypto_exchange_summary.rb +199 -0
  228. data/lib/intrinio-sdk/models/crypto_pair.rb +259 -0
  229. data/lib/intrinio-sdk/models/crypto_pair_summary.rb +199 -0
  230. data/lib/intrinio-sdk/models/crypto_price.rb +239 -0
  231. data/lib/intrinio-sdk/models/crypto_snapshot.rb +329 -0
  232. data/lib/intrinio-sdk/models/crypto_stat.rb +259 -0
  233. data/lib/intrinio-sdk/models/data_tag.rb +1 -1
  234. data/lib/intrinio-sdk/models/data_tag_summary.rb +1 -1
  235. data/lib/intrinio-sdk/models/detrended_price_oscillator_technical_value.rb +199 -0
  236. data/lib/intrinio-sdk/models/dividend_record.rb +1 -1
  237. data/lib/intrinio-sdk/models/donchian_channel_technical_value.rb +209 -0
  238. data/lib/intrinio-sdk/models/earnings_record.rb +1 -1
  239. data/lib/intrinio-sdk/models/ease_of_movement_technical_value.rb +199 -0
  240. data/lib/intrinio-sdk/models/economic_index.rb +1 -1
  241. data/lib/intrinio-sdk/models/economic_index_summary.rb +1 -1
  242. data/lib/intrinio-sdk/models/filing.rb +1 -1
  243. data/lib/intrinio-sdk/models/filing_note.rb +1 -1
  244. data/lib/intrinio-sdk/models/filing_note_filing.rb +1 -1
  245. data/lib/intrinio-sdk/models/filing_note_summary.rb +1 -1
  246. data/lib/intrinio-sdk/models/filing_summary.rb +1 -1
  247. data/lib/intrinio-sdk/models/force_index_technical_value.rb +199 -0
  248. data/lib/intrinio-sdk/models/forex_currency.rb +1 -1
  249. data/lib/intrinio-sdk/models/forex_pair.rb +1 -1
  250. data/lib/intrinio-sdk/models/forex_price.rb +1 -1
  251. data/lib/intrinio-sdk/models/fundamental.rb +1 -1
  252. data/lib/intrinio-sdk/models/fundamental_summary.rb +1 -1
  253. data/lib/intrinio-sdk/models/historical_data.rb +1 -1
  254. data/lib/intrinio-sdk/models/ichimoku_kinko_hyo_technical_value.rb +239 -0
  255. data/lib/intrinio-sdk/models/intraday_stock_price.rb +1 -1
  256. data/lib/intrinio-sdk/models/keltner_channel_technical_value.rb +219 -0
  257. data/lib/intrinio-sdk/models/know_sure_thing_technical_value.rb +199 -0
  258. data/lib/intrinio-sdk/models/mass_index_technical_value.rb +199 -0
  259. data/lib/intrinio-sdk/models/money_flow_index_technical_value.rb +199 -0
  260. data/lib/intrinio-sdk/models/moving_average_convergence_divergence_technical_value.rb +219 -0
  261. data/lib/intrinio-sdk/models/municipality.rb +1 -1
  262. data/lib/intrinio-sdk/models/municipality_financial.rb +1 -1
  263. data/lib/intrinio-sdk/models/negative_volume_index_technical_value.rb +199 -0
  264. data/lib/intrinio-sdk/models/on_balance_volume_mean_technical_value.rb +199 -0
  265. data/lib/intrinio-sdk/models/on_balance_volume_technical_value.rb +199 -0
  266. data/lib/intrinio-sdk/models/option.rb +239 -0
  267. data/lib/intrinio-sdk/models/option_chain.rb +197 -0
  268. data/lib/intrinio-sdk/models/option_price.rb +319 -0
  269. data/lib/intrinio-sdk/models/realtime_stock_price.rb +1 -1
  270. data/lib/intrinio-sdk/models/realtime_stock_price_security.rb +1 -1
  271. data/lib/intrinio-sdk/models/relative_strength_index_technical_value.rb +199 -0
  272. data/lib/intrinio-sdk/models/reported_financial.rb +18 -6
  273. data/lib/intrinio-sdk/models/reported_financial_dimension.rb +199 -0
  274. data/lib/intrinio-sdk/models/reported_tag.rb +1 -1
  275. data/lib/intrinio-sdk/models/security.rb +15 -5
  276. data/lib/intrinio-sdk/models/security_screen_clause.rb +1 -1
  277. data/lib/intrinio-sdk/models/security_screen_group.rb +1 -1
  278. data/lib/intrinio-sdk/models/security_screen_result.rb +1 -1
  279. data/lib/intrinio-sdk/models/security_screen_result_data.rb +1 -1
  280. data/lib/intrinio-sdk/models/security_summary.rb +1 -1
  281. data/lib/intrinio-sdk/models/sic_index.rb +1 -1
  282. data/lib/intrinio-sdk/models/simple_moving_average_technical_value.rb +199 -0
  283. data/lib/intrinio-sdk/models/standardized_financial.rb +1 -1
  284. data/lib/intrinio-sdk/models/stochastic_oscillator_technical_value.rb +209 -0
  285. data/lib/intrinio-sdk/models/stock_exchange.rb +1 -1
  286. data/lib/intrinio-sdk/models/stock_market_index.rb +1 -1
  287. data/lib/intrinio-sdk/models/stock_market_index_summary.rb +1 -1
  288. data/lib/intrinio-sdk/models/stock_price.rb +1 -1
  289. data/lib/intrinio-sdk/models/stock_price_adjustment.rb +1 -1
  290. data/lib/intrinio-sdk/models/stock_price_adjustment_summary.rb +1 -1
  291. data/lib/intrinio-sdk/models/stock_price_summary.rb +1 -1
  292. data/lib/intrinio-sdk/models/technical_indicator.rb +199 -0
  293. data/lib/intrinio-sdk/models/triple_exponential_average_technical_value.rb +199 -0
  294. data/lib/intrinio-sdk/models/true_strength_index_technical_value.rb +199 -0
  295. data/lib/intrinio-sdk/models/ultimate_oscillator_technical_value.rb +199 -0
  296. data/lib/intrinio-sdk/models/volume_price_trend_technical_value.rb +199 -0
  297. data/lib/intrinio-sdk/models/volume_weighted_average_price_value.rb +199 -0
  298. data/lib/intrinio-sdk/models/vortex_indicator_technical_value.rb +209 -0
  299. data/lib/intrinio-sdk/models/williams_r_technical_value.rb +199 -0
  300. data/lib/intrinio-sdk/version.rb +2 -2
  301. data/spec/api/company_api_spec.rb +9 -9
  302. data/spec/api/crypto_api_spec.rb +166 -0
  303. data/spec/api/data_point_api_spec.rb +6 -6
  304. data/spec/api/fundamentals_api_spec.rb +2 -2
  305. data/spec/api/historical_data_api_spec.rb +4 -3
  306. data/spec/api/options_api_spec.rb +105 -0
  307. data/spec/api/security_api_spec.rb +562 -10
  308. data/spec/api/stock_exchange_api_spec.rb +1 -1
  309. data/spec/api/technical_api_spec.rb +587 -0
  310. data/spec/models/accumulation_distribution_index_technical_value_spec.rb +48 -0
  311. data/spec/models/api_response_crypto_book_asks_spec.rb +60 -0
  312. data/spec/models/api_response_crypto_book_bids_spec.rb +60 -0
  313. data/spec/models/api_response_crypto_book_spec.rb +66 -0
  314. data/spec/models/api_response_crypto_currencies_spec.rb +42 -0
  315. data/spec/models/api_response_crypto_exchanges_spec.rb +42 -0
  316. data/spec/models/api_response_crypto_pairs_spec.rb +48 -0
  317. data/spec/models/api_response_crypto_prices_spec.rb +66 -0
  318. data/spec/models/api_response_crypto_snapshot_spec.rb +54 -0
  319. data/spec/models/api_response_crypto_stats_spec.rb +42 -0
  320. data/spec/models/api_response_option_prices_spec.rb +54 -0
  321. data/spec/models/api_response_options_chain_spec.rb +42 -0
  322. data/spec/models/api_response_options_expirations_spec.rb +42 -0
  323. data/spec/models/api_response_options_spec.rb +48 -0
  324. data/spec/models/api_response_security_accumulation_distribution_index_spec.rb +60 -0
  325. data/spec/models/api_response_security_average_daily_trading_volume_spec.rb +60 -0
  326. data/spec/models/api_response_security_average_directional_index_spec.rb +60 -0
  327. data/spec/models/api_response_security_average_true_range_spec.rb +60 -0
  328. data/spec/models/api_response_security_awesome_oscillator_spec.rb +60 -0
  329. data/spec/models/api_response_security_bollinger_bands_spec.rb +60 -0
  330. data/spec/models/api_response_security_chaikin_money_flow_spec.rb +60 -0
  331. data/spec/models/api_response_security_commodity_channel_index_spec.rb +60 -0
  332. data/spec/models/api_response_security_detrended_price_oscillator_spec.rb +60 -0
  333. data/spec/models/api_response_security_donchian_channel_spec.rb +60 -0
  334. data/spec/models/api_response_security_ease_of_movement_spec.rb +60 -0
  335. data/spec/models/api_response_security_force_index_spec.rb +60 -0
  336. data/spec/models/api_response_security_ichimoku_kinko_hyo_spec.rb +60 -0
  337. data/spec/models/api_response_security_keltner_channel_spec.rb +60 -0
  338. data/spec/models/api_response_security_know_sure_thing_spec.rb +60 -0
  339. data/spec/models/api_response_security_mass_index_spec.rb +60 -0
  340. data/spec/models/api_response_security_money_flow_index_spec.rb +60 -0
  341. data/spec/models/api_response_security_moving_average_convergence_divergence_spec.rb +60 -0
  342. data/spec/models/api_response_security_negative_volume_index_spec.rb +60 -0
  343. data/spec/models/api_response_security_on_balance_volume_mean_spec.rb +60 -0
  344. data/spec/models/api_response_security_on_balance_volume_spec.rb +60 -0
  345. data/spec/models/api_response_security_relative_strength_index_spec.rb +60 -0
  346. data/spec/models/api_response_security_simple_moving_average_spec.rb +60 -0
  347. data/spec/models/api_response_security_stochastic_oscillator_spec.rb +60 -0
  348. data/spec/models/api_response_security_triple_exponential_average_spec.rb +60 -0
  349. data/spec/models/api_response_security_true_strength_index_spec.rb +60 -0
  350. data/spec/models/api_response_security_ultimate_oscillator_spec.rb +60 -0
  351. data/spec/models/api_response_security_volume_price_trend_spec.rb +60 -0
  352. data/spec/models/api_response_security_volume_weighted_average_price_spec.rb +60 -0
  353. data/spec/models/api_response_security_vortex_indicator_spec.rb +60 -0
  354. data/spec/models/api_response_security_williams_r_spec.rb +60 -0
  355. data/spec/models/average_daily_trading_volume_technical_value_spec.rb +48 -0
  356. data/spec/models/average_directional_index_technical_value_spec.rb +60 -0
  357. data/spec/models/average_true_range_technical_value_spec.rb +48 -0
  358. data/spec/models/awesome_oscillator_technical_value_spec.rb +48 -0
  359. data/spec/models/bollinger_bands_technical_value_spec.rb +60 -0
  360. data/spec/models/chaikin_money_flow_technical_value_spec.rb +48 -0
  361. data/spec/models/commodity_channel_index_technical_value_spec.rb +48 -0
  362. data/spec/models/crypto_ask_spec.rb +48 -0
  363. data/spec/models/crypto_bid_spec.rb +48 -0
  364. data/spec/models/crypto_book_entry_spec.rb +48 -0
  365. data/spec/models/crypto_currency_spec.rb +66 -0
  366. data/spec/models/crypto_exchange_spec.rb +72 -0
  367. data/spec/models/crypto_exchange_summary_spec.rb +48 -0
  368. data/spec/models/crypto_pair_spec.rb +84 -0
  369. data/spec/models/crypto_pair_summary_spec.rb +48 -0
  370. data/spec/models/crypto_price_spec.rb +72 -0
  371. data/spec/models/crypto_snapshot_spec.rb +126 -0
  372. data/spec/models/crypto_stat_spec.rb +84 -0
  373. data/spec/models/detrended_price_oscillator_technical_value_spec.rb +48 -0
  374. data/spec/models/donchian_channel_technical_value_spec.rb +54 -0
  375. data/spec/models/ease_of_movement_technical_value_spec.rb +48 -0
  376. data/spec/models/force_index_technical_value_spec.rb +48 -0
  377. data/spec/models/ichimoku_kinko_hyo_technical_value_spec.rb +72 -0
  378. data/spec/models/keltner_channel_technical_value_spec.rb +60 -0
  379. data/spec/models/know_sure_thing_technical_value_spec.rb +48 -0
  380. data/spec/models/mass_index_technical_value_spec.rb +48 -0
  381. data/spec/models/money_flow_index_technical_value_spec.rb +48 -0
  382. data/spec/models/moving_average_convergence_divergence_technical_value_spec.rb +60 -0
  383. data/spec/models/negative_volume_index_technical_value_spec.rb +48 -0
  384. data/spec/models/on_balance_volume_mean_technical_value_spec.rb +48 -0
  385. data/spec/models/on_balance_volume_technical_value_spec.rb +48 -0
  386. data/spec/models/option_chain_spec.rb +48 -0
  387. data/spec/models/option_price_spec.rb +120 -0
  388. data/spec/models/option_spec.rb +72 -0
  389. data/spec/models/relative_strength_index_technical_value_spec.rb +48 -0
  390. data/spec/models/reported_financial_dimension_spec.rb +48 -0
  391. data/spec/models/reported_financial_spec.rb +6 -0
  392. data/spec/models/security_spec.rb +6 -0
  393. data/spec/models/simple_moving_average_technical_value_spec.rb +48 -0
  394. data/spec/models/stochastic_oscillator_technical_value_spec.rb +54 -0
  395. data/spec/models/technical_indicator_spec.rb +48 -0
  396. data/spec/models/triple_exponential_average_technical_value_spec.rb +48 -0
  397. data/spec/models/true_strength_index_technical_value_spec.rb +48 -0
  398. data/spec/models/ultimate_oscillator_technical_value_spec.rb +48 -0
  399. data/spec/models/volume_price_trend_technical_value_spec.rb +48 -0
  400. data/spec/models/volume_weighted_average_price_value_spec.rb +48 -0
  401. data/spec/models/vortex_indicator_technical_value_spec.rb +54 -0
  402. data/spec/models/williams_r_technical_value_spec.rb +48 -0
  403. metadata +378 -2
@@ -3,7 +3,7 @@
3
3
 
4
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
5
 
6
- OpenAPI spec version: 2.2.0
6
+ OpenAPI spec version: 2.5.0
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.3.0-SNAPSHOT
@@ -21,7 +21,7 @@ module Intrinio
21
21
  end
22
22
 
23
23
  # All Stock Exchanges
24
- # Returns all Stock Exchanges. Returns Stock Exchanges matching parameters when specified.
24
+ # Returns all Stock Exchanges matching the specified parameters
25
25
  # @param [Hash] opts the optional parameters
26
26
  # @option opts [String] :city Filter by city
27
27
  # @option opts [String] :country Filter by country
@@ -34,7 +34,7 @@ module Intrinio
34
34
  end
35
35
 
36
36
  # All Stock Exchanges
37
- # Returns all Stock Exchanges. Returns Stock Exchanges matching parameters when specified.
37
+ # Returns all Stock Exchanges matching the specified parameters
38
38
  # @param [Hash] opts the optional parameters
39
39
  # @option opts [String] :city Filter by city
40
40
  # @option opts [String] :country Filter by country
@@ -0,0 +1,2474 @@
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.5.0
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.3.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require "uri"
14
+
15
+ module Intrinio
16
+ class TechnicalApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+
23
+ # Accumulation/Distribution Index
24
+ # Returns the Accumulation/Distribution Index values of Stock Prices for the Security with the given `identifier`
25
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
26
+ # @param [Hash] opts the optional parameters
27
+ # @option opts [String] :start_date Return technical indicator values on or after the date
28
+ # @option opts [String] :end_date Return technical indicator values on or before the date
29
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
30
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
31
+ # @return [ApiResponseSecurityAccumulationDistributionIndex]
32
+ def get_security_price_technicals_adi(identifier, opts = {})
33
+ data, _status_code, _headers = get_security_price_technicals_adi_with_http_info(identifier, opts)
34
+ return data
35
+ end
36
+
37
+ # Accumulation/Distribution Index
38
+ # Returns the Accumulation/Distribution Index values of Stock Prices for the Security with the given `identifier`
39
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
40
+ # @param [Hash] opts the optional parameters
41
+ # @option opts [String] :start_date Return technical indicator values on or after the date
42
+ # @option opts [String] :end_date Return technical indicator values on or before the date
43
+ # @option opts [Integer] :page_size The number of results to return
44
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
45
+ # @return [Array<(ApiResponseSecurityAccumulationDistributionIndex, Fixnum, Hash)>] ApiResponseSecurityAccumulationDistributionIndex data, response status code and response headers
46
+ def get_security_price_technicals_adi_with_http_info(identifier, opts = {})
47
+ if @api_client.config.debugging
48
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_adi ..."
49
+ end
50
+ # verify the required parameter 'identifier' is set
51
+ if @api_client.config.client_side_validation && identifier.nil?
52
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_adi"
53
+ end
54
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
55
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_adi, must be smaller than or equal to 10000.'
56
+ end
57
+
58
+ # resource path
59
+ local_var_path = "/securities/{identifier}/prices/technicals/adi".sub('{' + 'identifier' + '}', identifier.to_s)
60
+
61
+ # query parameters
62
+ query_params = {}
63
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
64
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
65
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
66
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
67
+
68
+ # header parameters
69
+ header_params = {}
70
+ # HTTP header 'Accept' (if needed)
71
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
72
+
73
+ # form parameters
74
+ form_params = {}
75
+
76
+ # http body (model)
77
+ post_body = nil
78
+ auth_names = ['ApiKeyAuth']
79
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
80
+ :header_params => header_params,
81
+ :query_params => query_params,
82
+ :form_params => form_params,
83
+ :body => post_body,
84
+ :auth_names => auth_names,
85
+ :return_type => 'ApiResponseSecurityAccumulationDistributionIndex')
86
+ if @api_client.config.debugging
87
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_adi\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
88
+ end
89
+ return data, status_code, headers
90
+ end
91
+
92
+ # Average Daily Trading Volume
93
+ # Returns the Average Daily Trading Volume values of Stock Prices for the Security with the given `identifier`
94
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
95
+ # @param [Hash] opts the optional parameters
96
+ # @option opts [Integer] :period The number of observations, per period, to calculate Average Daily Trading Volume (default to 22)
97
+ # @option opts [String] :start_date Return technical indicator values on or after the date
98
+ # @option opts [String] :end_date Return technical indicator values on or before the date
99
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
100
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
101
+ # @return [ApiResponseSecurityAverageDailyTradingVolume]
102
+ def get_security_price_technicals_adtv(identifier, opts = {})
103
+ data, _status_code, _headers = get_security_price_technicals_adtv_with_http_info(identifier, opts)
104
+ return data
105
+ end
106
+
107
+ # Average Daily Trading Volume
108
+ # Returns the Average Daily Trading Volume values of Stock Prices for the Security with the given &#x60;identifier&#x60;
109
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
110
+ # @param [Hash] opts the optional parameters
111
+ # @option opts [Integer] :period The number of observations, per period, to calculate Average Daily Trading Volume
112
+ # @option opts [String] :start_date Return technical indicator values on or after the date
113
+ # @option opts [String] :end_date Return technical indicator values on or before the date
114
+ # @option opts [Integer] :page_size The number of results to return
115
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
116
+ # @return [Array<(ApiResponseSecurityAverageDailyTradingVolume, Fixnum, Hash)>] ApiResponseSecurityAverageDailyTradingVolume data, response status code and response headers
117
+ def get_security_price_technicals_adtv_with_http_info(identifier, opts = {})
118
+ if @api_client.config.debugging
119
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_adtv ..."
120
+ end
121
+ # verify the required parameter 'identifier' is set
122
+ if @api_client.config.client_side_validation && identifier.nil?
123
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_adtv"
124
+ end
125
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 5
126
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_adtv, must be greater than or equal to 5.'
127
+ end
128
+
129
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
130
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_adtv, must be smaller than or equal to 10000.'
131
+ end
132
+
133
+ # resource path
134
+ local_var_path = "/securities/{identifier}/prices/technicals/adtv".sub('{' + 'identifier' + '}', identifier.to_s)
135
+
136
+ # query parameters
137
+ query_params = {}
138
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
139
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
140
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
141
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
142
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
143
+
144
+ # header parameters
145
+ header_params = {}
146
+ # HTTP header 'Accept' (if needed)
147
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
148
+
149
+ # form parameters
150
+ form_params = {}
151
+
152
+ # http body (model)
153
+ post_body = nil
154
+ auth_names = ['ApiKeyAuth']
155
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
156
+ :header_params => header_params,
157
+ :query_params => query_params,
158
+ :form_params => form_params,
159
+ :body => post_body,
160
+ :auth_names => auth_names,
161
+ :return_type => 'ApiResponseSecurityAverageDailyTradingVolume')
162
+ if @api_client.config.debugging
163
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_adtv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
164
+ end
165
+ return data, status_code, headers
166
+ end
167
+
168
+ # Average Directional Index
169
+ # Returns the Average Directional Index values of Stock Prices for the Security with the given `identifier`
170
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
171
+ # @param [Hash] opts the optional parameters
172
+ # @option opts [Integer] :period The number of observations, per period, to calculate Average Directional Index (default to 14)
173
+ # @option opts [String] :start_date Return technical indicator values on or after the date
174
+ # @option opts [String] :end_date Return technical indicator values on or before the date
175
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
176
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
177
+ # @return [ApiResponseSecurityAverageDirectionalIndex]
178
+ def get_security_price_technicals_adx(identifier, opts = {})
179
+ data, _status_code, _headers = get_security_price_technicals_adx_with_http_info(identifier, opts)
180
+ return data
181
+ end
182
+
183
+ # Average Directional Index
184
+ # Returns the Average Directional Index values of Stock Prices for the Security with the given &#x60;identifier&#x60;
185
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
186
+ # @param [Hash] opts the optional parameters
187
+ # @option opts [Integer] :period The number of observations, per period, to calculate Average Directional Index
188
+ # @option opts [String] :start_date Return technical indicator values on or after the date
189
+ # @option opts [String] :end_date Return technical indicator values on or before the date
190
+ # @option opts [Integer] :page_size The number of results to return
191
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
192
+ # @return [Array<(ApiResponseSecurityAverageDirectionalIndex, Fixnum, Hash)>] ApiResponseSecurityAverageDirectionalIndex data, response status code and response headers
193
+ def get_security_price_technicals_adx_with_http_info(identifier, opts = {})
194
+ if @api_client.config.debugging
195
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_adx ..."
196
+ end
197
+ # verify the required parameter 'identifier' is set
198
+ if @api_client.config.client_side_validation && identifier.nil?
199
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_adx"
200
+ end
201
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 3
202
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_adx, must be greater than or equal to 3.'
203
+ end
204
+
205
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
206
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_adx, must be smaller than or equal to 10000.'
207
+ end
208
+
209
+ # resource path
210
+ local_var_path = "/securities/{identifier}/prices/technicals/adx".sub('{' + 'identifier' + '}', identifier.to_s)
211
+
212
+ # query parameters
213
+ query_params = {}
214
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
215
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
216
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
217
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
218
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
219
+
220
+ # header parameters
221
+ header_params = {}
222
+ # HTTP header 'Accept' (if needed)
223
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
224
+
225
+ # form parameters
226
+ form_params = {}
227
+
228
+ # http body (model)
229
+ post_body = nil
230
+ auth_names = ['ApiKeyAuth']
231
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
232
+ :header_params => header_params,
233
+ :query_params => query_params,
234
+ :form_params => form_params,
235
+ :body => post_body,
236
+ :auth_names => auth_names,
237
+ :return_type => 'ApiResponseSecurityAverageDirectionalIndex')
238
+ if @api_client.config.debugging
239
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_adx\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
240
+ end
241
+ return data, status_code, headers
242
+ end
243
+
244
+ # Awesome Oscillator
245
+ # Returns the Awesome Oscillator values of Stock Prices for the Security with the given `identifier`
246
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
247
+ # @param [Hash] opts the optional parameters
248
+ # @option opts [Integer] :short_period The number of observations, per period, to calculate short period Simple Moving Average of the Awesome Oscillator (default to 5)
249
+ # @option opts [Integer] :long_period The number of observations, per period, to calculate long period Simple Moving Average of the Awesome Oscillator (default to 34)
250
+ # @option opts [String] :start_date Return technical indicator values on or after the date
251
+ # @option opts [String] :end_date Return technical indicator values on or before the date
252
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
253
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
254
+ # @return [ApiResponseSecurityAwesomeOscillator]
255
+ def get_security_price_technicals_ao(identifier, opts = {})
256
+ data, _status_code, _headers = get_security_price_technicals_ao_with_http_info(identifier, opts)
257
+ return data
258
+ end
259
+
260
+ # Awesome Oscillator
261
+ # Returns the Awesome Oscillator values of Stock Prices for the Security with the given &#x60;identifier&#x60;
262
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
263
+ # @param [Hash] opts the optional parameters
264
+ # @option opts [Integer] :short_period The number of observations, per period, to calculate short period Simple Moving Average of the Awesome Oscillator
265
+ # @option opts [Integer] :long_period The number of observations, per period, to calculate long period Simple Moving Average of the Awesome Oscillator
266
+ # @option opts [String] :start_date Return technical indicator values on or after the date
267
+ # @option opts [String] :end_date Return technical indicator values on or before the date
268
+ # @option opts [Integer] :page_size The number of results to return
269
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
270
+ # @return [Array<(ApiResponseSecurityAwesomeOscillator, Fixnum, Hash)>] ApiResponseSecurityAwesomeOscillator data, response status code and response headers
271
+ def get_security_price_technicals_ao_with_http_info(identifier, opts = {})
272
+ if @api_client.config.debugging
273
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_ao ..."
274
+ end
275
+ # verify the required parameter 'identifier' is set
276
+ if @api_client.config.client_side_validation && identifier.nil?
277
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_ao"
278
+ end
279
+ if @api_client.config.client_side_validation && !opts[:'long_period'].nil? && opts[:'long_period'] < 5
280
+ fail ArgumentError, 'invalid value for "opts[:"long_period"]" when calling TechnicalApi.get_security_price_technicals_ao, must be greater than or equal to 5.'
281
+ end
282
+
283
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
284
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_ao, must be smaller than or equal to 10000.'
285
+ end
286
+
287
+ # resource path
288
+ local_var_path = "/securities/{identifier}/prices/technicals/ao".sub('{' + 'identifier' + '}', identifier.to_s)
289
+
290
+ # query parameters
291
+ query_params = {}
292
+ query_params[:'short_period'] = opts[:'short_period'] if !opts[:'short_period'].nil?
293
+ query_params[:'long_period'] = opts[:'long_period'] if !opts[:'long_period'].nil?
294
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
295
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
296
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
297
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
298
+
299
+ # header parameters
300
+ header_params = {}
301
+ # HTTP header 'Accept' (if needed)
302
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
303
+
304
+ # form parameters
305
+ form_params = {}
306
+
307
+ # http body (model)
308
+ post_body = nil
309
+ auth_names = ['ApiKeyAuth']
310
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
311
+ :header_params => header_params,
312
+ :query_params => query_params,
313
+ :form_params => form_params,
314
+ :body => post_body,
315
+ :auth_names => auth_names,
316
+ :return_type => 'ApiResponseSecurityAwesomeOscillator')
317
+ if @api_client.config.debugging
318
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_ao\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
319
+ end
320
+ return data, status_code, headers
321
+ end
322
+
323
+ # Average True Range
324
+ # Returns the Average True Range values of Stock Prices for the Security with the given `identifier`
325
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
326
+ # @param [Hash] opts the optional parameters
327
+ # @option opts [Integer] :period The number of observations, per period, to calculate Average True Range (default to 14)
328
+ # @option opts [String] :start_date Return technical indicator values on or after the date
329
+ # @option opts [String] :end_date Return technical indicator values on or before the date
330
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
331
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
332
+ # @return [ApiResponseSecurityAverageTrueRange]
333
+ def get_security_price_technicals_atr(identifier, opts = {})
334
+ data, _status_code, _headers = get_security_price_technicals_atr_with_http_info(identifier, opts)
335
+ return data
336
+ end
337
+
338
+ # Average True Range
339
+ # Returns the Average True Range values of Stock Prices for the Security with the given &#x60;identifier&#x60;
340
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
341
+ # @param [Hash] opts the optional parameters
342
+ # @option opts [Integer] :period The number of observations, per period, to calculate Average True Range
343
+ # @option opts [String] :start_date Return technical indicator values on or after the date
344
+ # @option opts [String] :end_date Return technical indicator values on or before the date
345
+ # @option opts [Integer] :page_size The number of results to return
346
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
347
+ # @return [Array<(ApiResponseSecurityAverageTrueRange, Fixnum, Hash)>] ApiResponseSecurityAverageTrueRange data, response status code and response headers
348
+ def get_security_price_technicals_atr_with_http_info(identifier, opts = {})
349
+ if @api_client.config.debugging
350
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_atr ..."
351
+ end
352
+ # verify the required parameter 'identifier' is set
353
+ if @api_client.config.client_side_validation && identifier.nil?
354
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_atr"
355
+ end
356
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 4
357
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_atr, must be greater than or equal to 4.'
358
+ end
359
+
360
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
361
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_atr, must be smaller than or equal to 10000.'
362
+ end
363
+
364
+ # resource path
365
+ local_var_path = "/securities/{identifier}/prices/technicals/atr".sub('{' + 'identifier' + '}', identifier.to_s)
366
+
367
+ # query parameters
368
+ query_params = {}
369
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
370
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
371
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
372
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
373
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
374
+
375
+ # header parameters
376
+ header_params = {}
377
+ # HTTP header 'Accept' (if needed)
378
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
379
+
380
+ # form parameters
381
+ form_params = {}
382
+
383
+ # http body (model)
384
+ post_body = nil
385
+ auth_names = ['ApiKeyAuth']
386
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
387
+ :header_params => header_params,
388
+ :query_params => query_params,
389
+ :form_params => form_params,
390
+ :body => post_body,
391
+ :auth_names => auth_names,
392
+ :return_type => 'ApiResponseSecurityAverageTrueRange')
393
+ if @api_client.config.debugging
394
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_atr\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
395
+ end
396
+ return data, status_code, headers
397
+ end
398
+
399
+ # Bollinger Bands
400
+ # Returns the Bollinger Bands values of Stock Prices for the Security with the given `identifier`
401
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
402
+ # @param [Hash] opts the optional parameters
403
+ # @option opts [Integer] :period The number of observations, per period, to calculate Bollinger Bands (default to 20)
404
+ # @option opts [Float] :standard_deviations The number of standard deviations to calculate the upper and lower bands of the Bollinger Bands (default to 2.0)
405
+ # @option opts [String] :price_key The Stock Price field to use when calculating Bollinger Bands (default to close)
406
+ # @option opts [String] :start_date Return technical indicator values on or after the date
407
+ # @option opts [String] :end_date Return technical indicator values on or before the date
408
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
409
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
410
+ # @return [ApiResponseSecurityBollingerBands]
411
+ def get_security_price_technicals_bb(identifier, opts = {})
412
+ data, _status_code, _headers = get_security_price_technicals_bb_with_http_info(identifier, opts)
413
+ return data
414
+ end
415
+
416
+ # Bollinger Bands
417
+ # Returns the Bollinger Bands values of Stock Prices for the Security with the given &#x60;identifier&#x60;
418
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
419
+ # @param [Hash] opts the optional parameters
420
+ # @option opts [Integer] :period The number of observations, per period, to calculate Bollinger Bands
421
+ # @option opts [Float] :standard_deviations The number of standard deviations to calculate the upper and lower bands of the Bollinger Bands
422
+ # @option opts [String] :price_key The Stock Price field to use when calculating Bollinger Bands
423
+ # @option opts [String] :start_date Return technical indicator values on or after the date
424
+ # @option opts [String] :end_date Return technical indicator values on or before the date
425
+ # @option opts [Integer] :page_size The number of results to return
426
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
427
+ # @return [Array<(ApiResponseSecurityBollingerBands, Fixnum, Hash)>] ApiResponseSecurityBollingerBands data, response status code and response headers
428
+ def get_security_price_technicals_bb_with_http_info(identifier, opts = {})
429
+ if @api_client.config.debugging
430
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_bb ..."
431
+ end
432
+ # verify the required parameter 'identifier' is set
433
+ if @api_client.config.client_side_validation && identifier.nil?
434
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_bb"
435
+ end
436
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 5
437
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_bb, must be greater than or equal to 5.'
438
+ end
439
+
440
+ if @api_client.config.client_side_validation && opts[:'price_key'] && !['open', 'high', 'low', 'close', 'volume'].include?(opts[:'price_key'])
441
+ fail ArgumentError, 'invalid value for "price_key", must be one of open, high, low, close, volume'
442
+ end
443
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
444
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_bb, must be smaller than or equal to 10000.'
445
+ end
446
+
447
+ # resource path
448
+ local_var_path = "/securities/{identifier}/prices/technicals/bb".sub('{' + 'identifier' + '}', identifier.to_s)
449
+
450
+ # query parameters
451
+ query_params = {}
452
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
453
+ query_params[:'standard_deviations'] = opts[:'standard_deviations'] if !opts[:'standard_deviations'].nil?
454
+ query_params[:'price_key'] = opts[:'price_key'] if !opts[:'price_key'].nil?
455
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
456
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
457
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
458
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
459
+
460
+ # header parameters
461
+ header_params = {}
462
+ # HTTP header 'Accept' (if needed)
463
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
464
+
465
+ # form parameters
466
+ form_params = {}
467
+
468
+ # http body (model)
469
+ post_body = nil
470
+ auth_names = ['ApiKeyAuth']
471
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
472
+ :header_params => header_params,
473
+ :query_params => query_params,
474
+ :form_params => form_params,
475
+ :body => post_body,
476
+ :auth_names => auth_names,
477
+ :return_type => 'ApiResponseSecurityBollingerBands')
478
+ if @api_client.config.debugging
479
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_bb\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
480
+ end
481
+ return data, status_code, headers
482
+ end
483
+
484
+ # Commodity Channel Index
485
+ # Returns the Commodity Channel Index values of Stock Prices for the Security with the given `identifier`
486
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
487
+ # @param [Hash] opts the optional parameters
488
+ # @option opts [Integer] :period The number of observations, per period, to calculate Commodity Channel Index (default to 20)
489
+ # @option opts [Float] :constant The number of observations, per period, to calculate Commodity Channel Index (default to 0.015)
490
+ # @option opts [String] :start_date Return technical indicator values on or after the date
491
+ # @option opts [String] :end_date Return technical indicator values on or before the date
492
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
493
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
494
+ # @return [ApiResponseSecurityCommodityChannelIndex]
495
+ def get_security_price_technicals_cci(identifier, opts = {})
496
+ data, _status_code, _headers = get_security_price_technicals_cci_with_http_info(identifier, opts)
497
+ return data
498
+ end
499
+
500
+ # Commodity Channel Index
501
+ # Returns the Commodity Channel Index values of Stock Prices for the Security with the given &#x60;identifier&#x60;
502
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
503
+ # @param [Hash] opts the optional parameters
504
+ # @option opts [Integer] :period The number of observations, per period, to calculate Commodity Channel Index
505
+ # @option opts [Float] :constant The number of observations, per period, to calculate Commodity Channel Index
506
+ # @option opts [String] :start_date Return technical indicator values on or after the date
507
+ # @option opts [String] :end_date Return technical indicator values on or before the date
508
+ # @option opts [Integer] :page_size The number of results to return
509
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
510
+ # @return [Array<(ApiResponseSecurityCommodityChannelIndex, Fixnum, Hash)>] ApiResponseSecurityCommodityChannelIndex data, response status code and response headers
511
+ def get_security_price_technicals_cci_with_http_info(identifier, opts = {})
512
+ if @api_client.config.debugging
513
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_cci ..."
514
+ end
515
+ # verify the required parameter 'identifier' is set
516
+ if @api_client.config.client_side_validation && identifier.nil?
517
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_cci"
518
+ end
519
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 5
520
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_cci, must be greater than or equal to 5.'
521
+ end
522
+
523
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
524
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_cci, must be smaller than or equal to 10000.'
525
+ end
526
+
527
+ # resource path
528
+ local_var_path = "/securities/{identifier}/prices/technicals/cci".sub('{' + 'identifier' + '}', identifier.to_s)
529
+
530
+ # query parameters
531
+ query_params = {}
532
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
533
+ query_params[:'constant'] = opts[:'constant'] if !opts[:'constant'].nil?
534
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
535
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
536
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
537
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
538
+
539
+ # header parameters
540
+ header_params = {}
541
+ # HTTP header 'Accept' (if needed)
542
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
543
+
544
+ # form parameters
545
+ form_params = {}
546
+
547
+ # http body (model)
548
+ post_body = nil
549
+ auth_names = ['ApiKeyAuth']
550
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
551
+ :header_params => header_params,
552
+ :query_params => query_params,
553
+ :form_params => form_params,
554
+ :body => post_body,
555
+ :auth_names => auth_names,
556
+ :return_type => 'ApiResponseSecurityCommodityChannelIndex')
557
+ if @api_client.config.debugging
558
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_cci\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
559
+ end
560
+ return data, status_code, headers
561
+ end
562
+
563
+ # Chaikin Money Flow
564
+ # Returns the Chaikin Money Flow values of Stock Prices for the Security with the given `identifier`
565
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
566
+ # @param [Hash] opts the optional parameters
567
+ # @option opts [Integer] :period The number of observations, per period, to calculate Chaikin Money Flow (default to 20)
568
+ # @option opts [String] :start_date Return technical indicator values on or after the date
569
+ # @option opts [String] :end_date Return technical indicator values on or before the date
570
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
571
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
572
+ # @return [ApiResponseSecurityChaikinMoneyFlow]
573
+ def get_security_price_technicals_cmf(identifier, opts = {})
574
+ data, _status_code, _headers = get_security_price_technicals_cmf_with_http_info(identifier, opts)
575
+ return data
576
+ end
577
+
578
+ # Chaikin Money Flow
579
+ # Returns the Chaikin Money Flow values of Stock Prices for the Security with the given &#x60;identifier&#x60;
580
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
581
+ # @param [Hash] opts the optional parameters
582
+ # @option opts [Integer] :period The number of observations, per period, to calculate Chaikin Money Flow
583
+ # @option opts [String] :start_date Return technical indicator values on or after the date
584
+ # @option opts [String] :end_date Return technical indicator values on or before the date
585
+ # @option opts [Integer] :page_size The number of results to return
586
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
587
+ # @return [Array<(ApiResponseSecurityChaikinMoneyFlow, Fixnum, Hash)>] ApiResponseSecurityChaikinMoneyFlow data, response status code and response headers
588
+ def get_security_price_technicals_cmf_with_http_info(identifier, opts = {})
589
+ if @api_client.config.debugging
590
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_cmf ..."
591
+ end
592
+ # verify the required parameter 'identifier' is set
593
+ if @api_client.config.client_side_validation && identifier.nil?
594
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_cmf"
595
+ end
596
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 5
597
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_cmf, must be greater than or equal to 5.'
598
+ end
599
+
600
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
601
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_cmf, must be smaller than or equal to 10000.'
602
+ end
603
+
604
+ # resource path
605
+ local_var_path = "/securities/{identifier}/prices/technicals/cmf".sub('{' + 'identifier' + '}', identifier.to_s)
606
+
607
+ # query parameters
608
+ query_params = {}
609
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
610
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
611
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
612
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
613
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
614
+
615
+ # header parameters
616
+ header_params = {}
617
+ # HTTP header 'Accept' (if needed)
618
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
619
+
620
+ # form parameters
621
+ form_params = {}
622
+
623
+ # http body (model)
624
+ post_body = nil
625
+ auth_names = ['ApiKeyAuth']
626
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
627
+ :header_params => header_params,
628
+ :query_params => query_params,
629
+ :form_params => form_params,
630
+ :body => post_body,
631
+ :auth_names => auth_names,
632
+ :return_type => 'ApiResponseSecurityChaikinMoneyFlow')
633
+ if @api_client.config.debugging
634
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_cmf\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
635
+ end
636
+ return data, status_code, headers
637
+ end
638
+
639
+ # Donchian Channel
640
+ # Returns the Donchian Channel values of Stock Prices for the Security with the given `identifier`
641
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
642
+ # @param [Hash] opts the optional parameters
643
+ # @option opts [Integer] :period The number of observations, per period, to calculate Donchian Channel (default to 20)
644
+ # @option opts [String] :price_key The Stock Price field to use when calculating Donchian Channel (default to close)
645
+ # @option opts [String] :start_date Return technical indicator values on or after the date
646
+ # @option opts [String] :end_date Return technical indicator values on or before the date
647
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
648
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
649
+ # @return [ApiResponseSecurityDonchianChannel]
650
+ def get_security_price_technicals_dc(identifier, opts = {})
651
+ data, _status_code, _headers = get_security_price_technicals_dc_with_http_info(identifier, opts)
652
+ return data
653
+ end
654
+
655
+ # Donchian Channel
656
+ # Returns the Donchian Channel values of Stock Prices for the Security with the given &#x60;identifier&#x60;
657
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
658
+ # @param [Hash] opts the optional parameters
659
+ # @option opts [Integer] :period The number of observations, per period, to calculate Donchian Channel
660
+ # @option opts [String] :price_key The Stock Price field to use when calculating Donchian Channel
661
+ # @option opts [String] :start_date Return technical indicator values on or after the date
662
+ # @option opts [String] :end_date Return technical indicator values on or before the date
663
+ # @option opts [Integer] :page_size The number of results to return
664
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
665
+ # @return [Array<(ApiResponseSecurityDonchianChannel, Fixnum, Hash)>] ApiResponseSecurityDonchianChannel data, response status code and response headers
666
+ def get_security_price_technicals_dc_with_http_info(identifier, opts = {})
667
+ if @api_client.config.debugging
668
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_dc ..."
669
+ end
670
+ # verify the required parameter 'identifier' is set
671
+ if @api_client.config.client_side_validation && identifier.nil?
672
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_dc"
673
+ end
674
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 5
675
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_dc, must be greater than or equal to 5.'
676
+ end
677
+
678
+ if @api_client.config.client_side_validation && opts[:'price_key'] && !['open', 'high', 'low', 'close', 'volume'].include?(opts[:'price_key'])
679
+ fail ArgumentError, 'invalid value for "price_key", must be one of open, high, low, close, volume'
680
+ end
681
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
682
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_dc, must be smaller than or equal to 10000.'
683
+ end
684
+
685
+ # resource path
686
+ local_var_path = "/securities/{identifier}/prices/technicals/dc".sub('{' + 'identifier' + '}', identifier.to_s)
687
+
688
+ # query parameters
689
+ query_params = {}
690
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
691
+ query_params[:'price_key'] = opts[:'price_key'] if !opts[:'price_key'].nil?
692
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
693
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
694
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
695
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
696
+
697
+ # header parameters
698
+ header_params = {}
699
+ # HTTP header 'Accept' (if needed)
700
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
701
+
702
+ # form parameters
703
+ form_params = {}
704
+
705
+ # http body (model)
706
+ post_body = nil
707
+ auth_names = ['ApiKeyAuth']
708
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
709
+ :header_params => header_params,
710
+ :query_params => query_params,
711
+ :form_params => form_params,
712
+ :body => post_body,
713
+ :auth_names => auth_names,
714
+ :return_type => 'ApiResponseSecurityDonchianChannel')
715
+ if @api_client.config.debugging
716
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_dc\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
717
+ end
718
+ return data, status_code, headers
719
+ end
720
+
721
+ # Detrended Price Oscillator
722
+ # Returns the Detrended Price Oscillator values of Stock Prices for the Security with the given `identifier`
723
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
724
+ # @param [Hash] opts the optional parameters
725
+ # @option opts [Integer] :period The number of observations, per period, to calculate Detrended Price Oscillator (default to 20)
726
+ # @option opts [String] :price_key The Stock Price field to use when calculating Detrended Price Oscillator (default to close)
727
+ # @option opts [String] :start_date Return technical indicator values on or after the date
728
+ # @option opts [String] :end_date Return technical indicator values on or before the date
729
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
730
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
731
+ # @return [ApiResponseSecurityDetrendedPriceOscillator]
732
+ def get_security_price_technicals_dpo(identifier, opts = {})
733
+ data, _status_code, _headers = get_security_price_technicals_dpo_with_http_info(identifier, opts)
734
+ return data
735
+ end
736
+
737
+ # Detrended Price Oscillator
738
+ # Returns the Detrended Price Oscillator values of Stock Prices for the Security with the given &#x60;identifier&#x60;
739
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
740
+ # @param [Hash] opts the optional parameters
741
+ # @option opts [Integer] :period The number of observations, per period, to calculate Detrended Price Oscillator
742
+ # @option opts [String] :price_key The Stock Price field to use when calculating Detrended Price Oscillator
743
+ # @option opts [String] :start_date Return technical indicator values on or after the date
744
+ # @option opts [String] :end_date Return technical indicator values on or before the date
745
+ # @option opts [Integer] :page_size The number of results to return
746
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
747
+ # @return [Array<(ApiResponseSecurityDetrendedPriceOscillator, Fixnum, Hash)>] ApiResponseSecurityDetrendedPriceOscillator data, response status code and response headers
748
+ def get_security_price_technicals_dpo_with_http_info(identifier, opts = {})
749
+ if @api_client.config.debugging
750
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_dpo ..."
751
+ end
752
+ # verify the required parameter 'identifier' is set
753
+ if @api_client.config.client_side_validation && identifier.nil?
754
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_dpo"
755
+ end
756
+ if @api_client.config.client_side_validation && opts[:'price_key'] && !['open', 'high', 'low', 'close', 'volume'].include?(opts[:'price_key'])
757
+ fail ArgumentError, 'invalid value for "price_key", must be one of open, high, low, close, volume'
758
+ end
759
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
760
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_dpo, must be smaller than or equal to 10000.'
761
+ end
762
+
763
+ # resource path
764
+ local_var_path = "/securities/{identifier}/prices/technicals/dpo".sub('{' + 'identifier' + '}', identifier.to_s)
765
+
766
+ # query parameters
767
+ query_params = {}
768
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
769
+ query_params[:'price_key'] = opts[:'price_key'] if !opts[:'price_key'].nil?
770
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
771
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
772
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
773
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
774
+
775
+ # header parameters
776
+ header_params = {}
777
+ # HTTP header 'Accept' (if needed)
778
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
779
+
780
+ # form parameters
781
+ form_params = {}
782
+
783
+ # http body (model)
784
+ post_body = nil
785
+ auth_names = ['ApiKeyAuth']
786
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
787
+ :header_params => header_params,
788
+ :query_params => query_params,
789
+ :form_params => form_params,
790
+ :body => post_body,
791
+ :auth_names => auth_names,
792
+ :return_type => 'ApiResponseSecurityDetrendedPriceOscillator')
793
+ if @api_client.config.debugging
794
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_dpo\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
795
+ end
796
+ return data, status_code, headers
797
+ end
798
+
799
+ # Ease of Movement
800
+ # Returns the Ease of Movement values of Stock Prices for the Security with the given `identifier`
801
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
802
+ # @param [Hash] opts the optional parameters
803
+ # @option opts [Integer] :period The number of observations, per period, to calculate Ease of Movement (default to 20)
804
+ # @option opts [String] :start_date Return technical indicator values on or after the date
805
+ # @option opts [String] :end_date Return technical indicator values on or before the date
806
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
807
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
808
+ # @return [ApiResponseSecurityEaseOfMovement]
809
+ def get_security_price_technicals_eom(identifier, opts = {})
810
+ data, _status_code, _headers = get_security_price_technicals_eom_with_http_info(identifier, opts)
811
+ return data
812
+ end
813
+
814
+ # Ease of Movement
815
+ # Returns the Ease of Movement values of Stock Prices for the Security with the given &#x60;identifier&#x60;
816
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
817
+ # @param [Hash] opts the optional parameters
818
+ # @option opts [Integer] :period The number of observations, per period, to calculate Ease of Movement
819
+ # @option opts [String] :start_date Return technical indicator values on or after the date
820
+ # @option opts [String] :end_date Return technical indicator values on or before the date
821
+ # @option opts [Integer] :page_size The number of results to return
822
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
823
+ # @return [Array<(ApiResponseSecurityEaseOfMovement, Fixnum, Hash)>] ApiResponseSecurityEaseOfMovement data, response status code and response headers
824
+ def get_security_price_technicals_eom_with_http_info(identifier, opts = {})
825
+ if @api_client.config.debugging
826
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_eom ..."
827
+ end
828
+ # verify the required parameter 'identifier' is set
829
+ if @api_client.config.client_side_validation && identifier.nil?
830
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_eom"
831
+ end
832
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 4
833
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_eom, must be greater than or equal to 4.'
834
+ end
835
+
836
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
837
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_eom, must be smaller than or equal to 10000.'
838
+ end
839
+
840
+ # resource path
841
+ local_var_path = "/securities/{identifier}/prices/technicals/eom".sub('{' + 'identifier' + '}', identifier.to_s)
842
+
843
+ # query parameters
844
+ query_params = {}
845
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
846
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
847
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
848
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
849
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
850
+
851
+ # header parameters
852
+ header_params = {}
853
+ # HTTP header 'Accept' (if needed)
854
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
855
+
856
+ # form parameters
857
+ form_params = {}
858
+
859
+ # http body (model)
860
+ post_body = nil
861
+ auth_names = ['ApiKeyAuth']
862
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
863
+ :header_params => header_params,
864
+ :query_params => query_params,
865
+ :form_params => form_params,
866
+ :body => post_body,
867
+ :auth_names => auth_names,
868
+ :return_type => 'ApiResponseSecurityEaseOfMovement')
869
+ if @api_client.config.debugging
870
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_eom\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
871
+ end
872
+ return data, status_code, headers
873
+ end
874
+
875
+ # Force Index
876
+ # Returns the Force Index values of Stock Prices for the Security with the given `identifier`
877
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
878
+ # @param [Hash] opts the optional parameters
879
+ # @option opts [String] :start_date Return technical indicator values on or after the date
880
+ # @option opts [String] :end_date Return technical indicator values on or before the date
881
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
882
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
883
+ # @return [ApiResponseSecurityForceIndex]
884
+ def get_security_price_technicals_fi(identifier, opts = {})
885
+ data, _status_code, _headers = get_security_price_technicals_fi_with_http_info(identifier, opts)
886
+ return data
887
+ end
888
+
889
+ # Force Index
890
+ # Returns the Force Index values of Stock Prices for the Security with the given &#x60;identifier&#x60;
891
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
892
+ # @param [Hash] opts the optional parameters
893
+ # @option opts [String] :start_date Return technical indicator values on or after the date
894
+ # @option opts [String] :end_date Return technical indicator values on or before the date
895
+ # @option opts [Integer] :page_size The number of results to return
896
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
897
+ # @return [Array<(ApiResponseSecurityForceIndex, Fixnum, Hash)>] ApiResponseSecurityForceIndex data, response status code and response headers
898
+ def get_security_price_technicals_fi_with_http_info(identifier, opts = {})
899
+ if @api_client.config.debugging
900
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_fi ..."
901
+ end
902
+ # verify the required parameter 'identifier' is set
903
+ if @api_client.config.client_side_validation && identifier.nil?
904
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_fi"
905
+ end
906
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
907
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_fi, must be smaller than or equal to 10000.'
908
+ end
909
+
910
+ # resource path
911
+ local_var_path = "/securities/{identifier}/prices/technicals/fi".sub('{' + 'identifier' + '}', identifier.to_s)
912
+
913
+ # query parameters
914
+ query_params = {}
915
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
916
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
917
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
918
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
919
+
920
+ # header parameters
921
+ header_params = {}
922
+ # HTTP header 'Accept' (if needed)
923
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
924
+
925
+ # form parameters
926
+ form_params = {}
927
+
928
+ # http body (model)
929
+ post_body = nil
930
+ auth_names = ['ApiKeyAuth']
931
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
932
+ :header_params => header_params,
933
+ :query_params => query_params,
934
+ :form_params => form_params,
935
+ :body => post_body,
936
+ :auth_names => auth_names,
937
+ :return_type => 'ApiResponseSecurityForceIndex')
938
+ if @api_client.config.debugging
939
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_fi\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
940
+ end
941
+ return data, status_code, headers
942
+ end
943
+
944
+ # Ichimoku Kinko Hyo
945
+ # Returns the Ichimoku Kinko Hyo values of Stock Prices for the Security with the given `identifier`
946
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
947
+ # @param [Hash] opts the optional parameters
948
+ # @option opts [Integer] :low_period The number of observations, per period, to calculate Tenkan Sen (Conversion Line) of Ichimoku Kinko Hyo (default to 9)
949
+ # @option opts [Integer] :medium_period The number of observations, per period, to calculate Kijun Sen (Base Line), Senkou Span A (Leading Span A), and Chikou Span (Lagging Span) of Ichimoku Kinko Hyo (default to 26)
950
+ # @option opts [Integer] :high_period The number of observations, per period, to calculate Senkou Span B (Leading Span B) of Ichimoku Kinko Hyo (default to 52)
951
+ # @option opts [String] :start_date Return technical indicator values on or after the date
952
+ # @option opts [String] :end_date Return technical indicator values on or before the date
953
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
954
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
955
+ # @return [ApiResponseSecurityIchimokuKinkoHyo]
956
+ def get_security_price_technicals_ichimoku(identifier, opts = {})
957
+ data, _status_code, _headers = get_security_price_technicals_ichimoku_with_http_info(identifier, opts)
958
+ return data
959
+ end
960
+
961
+ # Ichimoku Kinko Hyo
962
+ # Returns the Ichimoku Kinko Hyo values of Stock Prices for the Security with the given &#x60;identifier&#x60;
963
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
964
+ # @param [Hash] opts the optional parameters
965
+ # @option opts [Integer] :low_period The number of observations, per period, to calculate Tenkan Sen (Conversion Line) of Ichimoku Kinko Hyo
966
+ # @option opts [Integer] :medium_period The number of observations, per period, to calculate Kijun Sen (Base Line), Senkou Span A (Leading Span A), and Chikou Span (Lagging Span) of Ichimoku Kinko Hyo
967
+ # @option opts [Integer] :high_period The number of observations, per period, to calculate Senkou Span B (Leading Span B) of Ichimoku Kinko Hyo
968
+ # @option opts [String] :start_date Return technical indicator values on or after the date
969
+ # @option opts [String] :end_date Return technical indicator values on or before the date
970
+ # @option opts [Integer] :page_size The number of results to return
971
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
972
+ # @return [Array<(ApiResponseSecurityIchimokuKinkoHyo, Fixnum, Hash)>] ApiResponseSecurityIchimokuKinkoHyo data, response status code and response headers
973
+ def get_security_price_technicals_ichimoku_with_http_info(identifier, opts = {})
974
+ if @api_client.config.debugging
975
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_ichimoku ..."
976
+ end
977
+ # verify the required parameter 'identifier' is set
978
+ if @api_client.config.client_side_validation && identifier.nil?
979
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_ichimoku"
980
+ end
981
+ if @api_client.config.client_side_validation && !opts[:'medium_period'].nil? && opts[:'medium_period'] < 2
982
+ fail ArgumentError, 'invalid value for "opts[:"medium_period"]" when calling TechnicalApi.get_security_price_technicals_ichimoku, must be greater than or equal to 2.'
983
+ end
984
+
985
+ if @api_client.config.client_side_validation && !opts[:'high_period'].nil? && opts[:'high_period'] < 4
986
+ fail ArgumentError, 'invalid value for "opts[:"high_period"]" when calling TechnicalApi.get_security_price_technicals_ichimoku, must be greater than or equal to 4.'
987
+ end
988
+
989
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
990
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_ichimoku, must be smaller than or equal to 10000.'
991
+ end
992
+
993
+ # resource path
994
+ local_var_path = "/securities/{identifier}/prices/technicals/ichimoku".sub('{' + 'identifier' + '}', identifier.to_s)
995
+
996
+ # query parameters
997
+ query_params = {}
998
+ query_params[:'low_period'] = opts[:'low_period'] if !opts[:'low_period'].nil?
999
+ query_params[:'medium_period'] = opts[:'medium_period'] if !opts[:'medium_period'].nil?
1000
+ query_params[:'high_period'] = opts[:'high_period'] if !opts[:'high_period'].nil?
1001
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1002
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1003
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1004
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1005
+
1006
+ # header parameters
1007
+ header_params = {}
1008
+ # HTTP header 'Accept' (if needed)
1009
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1010
+
1011
+ # form parameters
1012
+ form_params = {}
1013
+
1014
+ # http body (model)
1015
+ post_body = nil
1016
+ auth_names = ['ApiKeyAuth']
1017
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1018
+ :header_params => header_params,
1019
+ :query_params => query_params,
1020
+ :form_params => form_params,
1021
+ :body => post_body,
1022
+ :auth_names => auth_names,
1023
+ :return_type => 'ApiResponseSecurityIchimokuKinkoHyo')
1024
+ if @api_client.config.debugging
1025
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_ichimoku\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1026
+ end
1027
+ return data, status_code, headers
1028
+ end
1029
+
1030
+ # Keltner Channel
1031
+ # Returns the Keltner Channel values of Stock Prices for the Security with the given `identifier`
1032
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1033
+ # @param [Hash] opts the optional parameters
1034
+ # @option opts [Integer] :period The number of observations, per period, to calculate Kelter Channel (default to 10)
1035
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1036
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1037
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1038
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1039
+ # @return [ApiResponseSecurityKeltnerChannel]
1040
+ def get_security_price_technicals_kc(identifier, opts = {})
1041
+ data, _status_code, _headers = get_security_price_technicals_kc_with_http_info(identifier, opts)
1042
+ return data
1043
+ end
1044
+
1045
+ # Keltner Channel
1046
+ # Returns the Keltner Channel values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1047
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1048
+ # @param [Hash] opts the optional parameters
1049
+ # @option opts [Integer] :period The number of observations, per period, to calculate Kelter Channel
1050
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1051
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1052
+ # @option opts [Integer] :page_size The number of results to return
1053
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1054
+ # @return [Array<(ApiResponseSecurityKeltnerChannel, Fixnum, Hash)>] ApiResponseSecurityKeltnerChannel data, response status code and response headers
1055
+ def get_security_price_technicals_kc_with_http_info(identifier, opts = {})
1056
+ if @api_client.config.debugging
1057
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_kc ..."
1058
+ end
1059
+ # verify the required parameter 'identifier' is set
1060
+ if @api_client.config.client_side_validation && identifier.nil?
1061
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_kc"
1062
+ end
1063
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 5
1064
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_kc, must be greater than or equal to 5.'
1065
+ end
1066
+
1067
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1068
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_kc, must be smaller than or equal to 10000.'
1069
+ end
1070
+
1071
+ # resource path
1072
+ local_var_path = "/securities/{identifier}/prices/technicals/kc".sub('{' + 'identifier' + '}', identifier.to_s)
1073
+
1074
+ # query parameters
1075
+ query_params = {}
1076
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
1077
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1078
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1079
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1080
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1081
+
1082
+ # header parameters
1083
+ header_params = {}
1084
+ # HTTP header 'Accept' (if needed)
1085
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1086
+
1087
+ # form parameters
1088
+ form_params = {}
1089
+
1090
+ # http body (model)
1091
+ post_body = nil
1092
+ auth_names = ['ApiKeyAuth']
1093
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1094
+ :header_params => header_params,
1095
+ :query_params => query_params,
1096
+ :form_params => form_params,
1097
+ :body => post_body,
1098
+ :auth_names => auth_names,
1099
+ :return_type => 'ApiResponseSecurityKeltnerChannel')
1100
+ if @api_client.config.debugging
1101
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_kc\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1102
+ end
1103
+ return data, status_code, headers
1104
+ end
1105
+
1106
+ # Know Sure Thing
1107
+ # Returns the Know Sure Thing values of Stock Prices for the Security with the given `identifier`
1108
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1109
+ # @param [Hash] opts the optional parameters
1110
+ # @option opts [Integer] :roc1 The number of observations, per period, to calculate the rate-of-change for RCMA1 (default to 10)
1111
+ # @option opts [Integer] :roc2 The number of observations, per period, to calculate the rate-of-change for RCMA2 (default to 15)
1112
+ # @option opts [Integer] :roc3 The number of observations, per period, to calculate the rate-of-change for RCMA2 (default to 15)
1113
+ # @option opts [Integer] :roc4 The number of observations, per period, to calculate the rate-of-change for RCMA3 (default to 20)
1114
+ # @option opts [Integer] :roc5 The number of observations, per period, to calculate the rate-of-change for RCMA4 (default to 30)
1115
+ # @option opts [Integer] :sma1 The number of observations, per period, to calculate the Simple Moving Average of the rate-of-change for RCMA1 (default to 10)
1116
+ # @option opts [Integer] :sma2 The number of observations, per period, to calculate the Simple Moving Average of the rate-of-change for RCMA2 (default to 10)
1117
+ # @option opts [Integer] :sma3 The number of observations, per period, to calculate the Simple Moving Average of the rate-of-change for RCMA3 (default to 10)
1118
+ # @option opts [Integer] :sma4 The number of observations, per period, to calculate the Simple Moving Average of the rate-of-change for RCMA4 (default to 15)
1119
+ # @option opts [String] :price_key The Stock Price field to use when calculating Know Sure Thing (default to close)
1120
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1121
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1122
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1123
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1124
+ # @return [ApiResponseSecurityKnowSureThing]
1125
+ def get_security_price_technicals_kst(identifier, opts = {})
1126
+ data, _status_code, _headers = get_security_price_technicals_kst_with_http_info(identifier, opts)
1127
+ return data
1128
+ end
1129
+
1130
+ # Know Sure Thing
1131
+ # Returns the Know Sure Thing values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1132
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1133
+ # @param [Hash] opts the optional parameters
1134
+ # @option opts [Integer] :roc1 The number of observations, per period, to calculate the rate-of-change for RCMA1
1135
+ # @option opts [Integer] :roc2 The number of observations, per period, to calculate the rate-of-change for RCMA2
1136
+ # @option opts [Integer] :roc3 The number of observations, per period, to calculate the rate-of-change for RCMA2
1137
+ # @option opts [Integer] :roc4 The number of observations, per period, to calculate the rate-of-change for RCMA3
1138
+ # @option opts [Integer] :roc5 The number of observations, per period, to calculate the rate-of-change for RCMA4
1139
+ # @option opts [Integer] :sma1 The number of observations, per period, to calculate the Simple Moving Average of the rate-of-change for RCMA1
1140
+ # @option opts [Integer] :sma2 The number of observations, per period, to calculate the Simple Moving Average of the rate-of-change for RCMA2
1141
+ # @option opts [Integer] :sma3 The number of observations, per period, to calculate the Simple Moving Average of the rate-of-change for RCMA3
1142
+ # @option opts [Integer] :sma4 The number of observations, per period, to calculate the Simple Moving Average of the rate-of-change for RCMA4
1143
+ # @option opts [String] :price_key The Stock Price field to use when calculating Know Sure Thing
1144
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1145
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1146
+ # @option opts [Integer] :page_size The number of results to return
1147
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1148
+ # @return [Array<(ApiResponseSecurityKnowSureThing, Fixnum, Hash)>] ApiResponseSecurityKnowSureThing data, response status code and response headers
1149
+ def get_security_price_technicals_kst_with_http_info(identifier, opts = {})
1150
+ if @api_client.config.debugging
1151
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_kst ..."
1152
+ end
1153
+ # verify the required parameter 'identifier' is set
1154
+ if @api_client.config.client_side_validation && identifier.nil?
1155
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_kst"
1156
+ end
1157
+ if @api_client.config.client_side_validation && !opts[:'roc5'].nil? && opts[:'roc5'] < 3
1158
+ fail ArgumentError, 'invalid value for "opts[:"roc5"]" when calling TechnicalApi.get_security_price_technicals_kst, must be greater than or equal to 3.'
1159
+ end
1160
+
1161
+ if @api_client.config.client_side_validation && !opts[:'sma4'].nil? && opts[:'sma4'] < 3
1162
+ fail ArgumentError, 'invalid value for "opts[:"sma4"]" when calling TechnicalApi.get_security_price_technicals_kst, must be greater than or equal to 3.'
1163
+ end
1164
+
1165
+ if @api_client.config.client_side_validation && opts[:'price_key'] && !['open', 'high', 'low', 'close', 'volume'].include?(opts[:'price_key'])
1166
+ fail ArgumentError, 'invalid value for "price_key", must be one of open, high, low, close, volume'
1167
+ end
1168
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1169
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_kst, must be smaller than or equal to 10000.'
1170
+ end
1171
+
1172
+ # resource path
1173
+ local_var_path = "/securities/{identifier}/prices/technicals/kst".sub('{' + 'identifier' + '}', identifier.to_s)
1174
+
1175
+ # query parameters
1176
+ query_params = {}
1177
+ query_params[:'roc1'] = opts[:'roc1'] if !opts[:'roc1'].nil?
1178
+ query_params[:'roc2'] = opts[:'roc2'] if !opts[:'roc2'].nil?
1179
+ query_params[:'roc2'] = opts[:'roc3'] if !opts[:'roc3'].nil?
1180
+ query_params[:'roc3'] = opts[:'roc4'] if !opts[:'roc4'].nil?
1181
+ query_params[:'roc4'] = opts[:'roc5'] if !opts[:'roc5'].nil?
1182
+ query_params[:'sma1'] = opts[:'sma1'] if !opts[:'sma1'].nil?
1183
+ query_params[:'sma2'] = opts[:'sma2'] if !opts[:'sma2'].nil?
1184
+ query_params[:'sma3'] = opts[:'sma3'] if !opts[:'sma3'].nil?
1185
+ query_params[:'sma4'] = opts[:'sma4'] if !opts[:'sma4'].nil?
1186
+ query_params[:'price_key'] = opts[:'price_key'] if !opts[:'price_key'].nil?
1187
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1188
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1189
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1190
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1191
+
1192
+ # header parameters
1193
+ header_params = {}
1194
+ # HTTP header 'Accept' (if needed)
1195
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1196
+
1197
+ # form parameters
1198
+ form_params = {}
1199
+
1200
+ # http body (model)
1201
+ post_body = nil
1202
+ auth_names = ['ApiKeyAuth']
1203
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1204
+ :header_params => header_params,
1205
+ :query_params => query_params,
1206
+ :form_params => form_params,
1207
+ :body => post_body,
1208
+ :auth_names => auth_names,
1209
+ :return_type => 'ApiResponseSecurityKnowSureThing')
1210
+ if @api_client.config.debugging
1211
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_kst\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1212
+ end
1213
+ return data, status_code, headers
1214
+ end
1215
+
1216
+ # Moving Average Convergence Divergence
1217
+ # Returns the Moving Average Convergence Divergence values of Stock Prices for the Security with the given `identifier`
1218
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1219
+ # @param [Hash] opts the optional parameters
1220
+ # @option opts [Integer] :fast_period The number of observations, per period, to calculate the fast moving Exponential Moving Average for Moving Average Convergence Divergence (default to 12)
1221
+ # @option opts [Integer] :slow_period The number of observations, per period, to calculate the slow moving Exponential Moving Average for Moving Average Convergence Divergence (default to 26)
1222
+ # @option opts [Integer] :signal_period The number of observations, per period, to calculate the signal line for Moving Average Convergence Divergence (default to 9)
1223
+ # @option opts [String] :price_key The Stock Price field to use when calculating Moving Average Convergence Divergence (default to close)
1224
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1225
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1226
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1227
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1228
+ # @return [ApiResponseSecurityMovingAverageConvergenceDivergence]
1229
+ def get_security_price_technicals_macd(identifier, opts = {})
1230
+ data, _status_code, _headers = get_security_price_technicals_macd_with_http_info(identifier, opts)
1231
+ return data
1232
+ end
1233
+
1234
+ # Moving Average Convergence Divergence
1235
+ # Returns the Moving Average Convergence Divergence values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1236
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1237
+ # @param [Hash] opts the optional parameters
1238
+ # @option opts [Integer] :fast_period The number of observations, per period, to calculate the fast moving Exponential Moving Average for Moving Average Convergence Divergence
1239
+ # @option opts [Integer] :slow_period The number of observations, per period, to calculate the slow moving Exponential Moving Average for Moving Average Convergence Divergence
1240
+ # @option opts [Integer] :signal_period The number of observations, per period, to calculate the signal line for Moving Average Convergence Divergence
1241
+ # @option opts [String] :price_key The Stock Price field to use when calculating Moving Average Convergence Divergence
1242
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1243
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1244
+ # @option opts [Integer] :page_size The number of results to return
1245
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1246
+ # @return [Array<(ApiResponseSecurityMovingAverageConvergenceDivergence, Fixnum, Hash)>] ApiResponseSecurityMovingAverageConvergenceDivergence data, response status code and response headers
1247
+ def get_security_price_technicals_macd_with_http_info(identifier, opts = {})
1248
+ if @api_client.config.debugging
1249
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_macd ..."
1250
+ end
1251
+ # verify the required parameter 'identifier' is set
1252
+ if @api_client.config.client_side_validation && identifier.nil?
1253
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_macd"
1254
+ end
1255
+ if @api_client.config.client_side_validation && !opts[:'slow_period'].nil? && opts[:'slow_period'] < 3
1256
+ fail ArgumentError, 'invalid value for "opts[:"slow_period"]" when calling TechnicalApi.get_security_price_technicals_macd, must be greater than or equal to 3.'
1257
+ end
1258
+
1259
+ if @api_client.config.client_side_validation && !opts[:'signal_period'].nil? && opts[:'signal_period'] < 3
1260
+ fail ArgumentError, 'invalid value for "opts[:"signal_period"]" when calling TechnicalApi.get_security_price_technicals_macd, must be greater than or equal to 3.'
1261
+ end
1262
+
1263
+ if @api_client.config.client_side_validation && opts[:'price_key'] && !['open', 'high', 'low', 'close', 'volume'].include?(opts[:'price_key'])
1264
+ fail ArgumentError, 'invalid value for "price_key", must be one of open, high, low, close, volume'
1265
+ end
1266
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1267
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_macd, must be smaller than or equal to 10000.'
1268
+ end
1269
+
1270
+ # resource path
1271
+ local_var_path = "/securities/{identifier}/prices/technicals/macd".sub('{' + 'identifier' + '}', identifier.to_s)
1272
+
1273
+ # query parameters
1274
+ query_params = {}
1275
+ query_params[:'fast_period'] = opts[:'fast_period'] if !opts[:'fast_period'].nil?
1276
+ query_params[:'slow_period'] = opts[:'slow_period'] if !opts[:'slow_period'].nil?
1277
+ query_params[:'signal_period'] = opts[:'signal_period'] if !opts[:'signal_period'].nil?
1278
+ query_params[:'price_key'] = opts[:'price_key'] if !opts[:'price_key'].nil?
1279
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1280
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1281
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1282
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1283
+
1284
+ # header parameters
1285
+ header_params = {}
1286
+ # HTTP header 'Accept' (if needed)
1287
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1288
+
1289
+ # form parameters
1290
+ form_params = {}
1291
+
1292
+ # http body (model)
1293
+ post_body = nil
1294
+ auth_names = ['ApiKeyAuth']
1295
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1296
+ :header_params => header_params,
1297
+ :query_params => query_params,
1298
+ :form_params => form_params,
1299
+ :body => post_body,
1300
+ :auth_names => auth_names,
1301
+ :return_type => 'ApiResponseSecurityMovingAverageConvergenceDivergence')
1302
+ if @api_client.config.debugging
1303
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_macd\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1304
+ end
1305
+ return data, status_code, headers
1306
+ end
1307
+
1308
+ # Money Flow Index
1309
+ # Returns the Money Flow Index values of Stock Prices for the Security with the given `identifier`
1310
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1311
+ # @param [Hash] opts the optional parameters
1312
+ # @option opts [Integer] :period The number of observations, per period, to calculate Money Flow Index (default to 14)
1313
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1314
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1315
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1316
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1317
+ # @return [ApiResponseSecurityMoneyFlowIndex]
1318
+ def get_security_price_technicals_mfi(identifier, opts = {})
1319
+ data, _status_code, _headers = get_security_price_technicals_mfi_with_http_info(identifier, opts)
1320
+ return data
1321
+ end
1322
+
1323
+ # Money Flow Index
1324
+ # Returns the Money Flow Index values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1325
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1326
+ # @param [Hash] opts the optional parameters
1327
+ # @option opts [Integer] :period The number of observations, per period, to calculate Money Flow Index
1328
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1329
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1330
+ # @option opts [Integer] :page_size The number of results to return
1331
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1332
+ # @return [Array<(ApiResponseSecurityMoneyFlowIndex, Fixnum, Hash)>] ApiResponseSecurityMoneyFlowIndex data, response status code and response headers
1333
+ def get_security_price_technicals_mfi_with_http_info(identifier, opts = {})
1334
+ if @api_client.config.debugging
1335
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_mfi ..."
1336
+ end
1337
+ # verify the required parameter 'identifier' is set
1338
+ if @api_client.config.client_side_validation && identifier.nil?
1339
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_mfi"
1340
+ end
1341
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 4
1342
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_mfi, must be greater than or equal to 4.'
1343
+ end
1344
+
1345
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1346
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_mfi, must be smaller than or equal to 10000.'
1347
+ end
1348
+
1349
+ # resource path
1350
+ local_var_path = "/securities/{identifier}/prices/technicals/mfi".sub('{' + 'identifier' + '}', identifier.to_s)
1351
+
1352
+ # query parameters
1353
+ query_params = {}
1354
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
1355
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1356
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1357
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1358
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1359
+
1360
+ # header parameters
1361
+ header_params = {}
1362
+ # HTTP header 'Accept' (if needed)
1363
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1364
+
1365
+ # form parameters
1366
+ form_params = {}
1367
+
1368
+ # http body (model)
1369
+ post_body = nil
1370
+ auth_names = ['ApiKeyAuth']
1371
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1372
+ :header_params => header_params,
1373
+ :query_params => query_params,
1374
+ :form_params => form_params,
1375
+ :body => post_body,
1376
+ :auth_names => auth_names,
1377
+ :return_type => 'ApiResponseSecurityMoneyFlowIndex')
1378
+ if @api_client.config.debugging
1379
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_mfi\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1380
+ end
1381
+ return data, status_code, headers
1382
+ end
1383
+
1384
+ # Mass Index
1385
+ # Returns the Mass Index values of Stock Prices for the Security with the given `identifier`
1386
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1387
+ # @param [Hash] opts the optional parameters
1388
+ # @option opts [Integer] :ema_period The number of observations, per period, to calculate the single Exponential Moving Average and the Double Exponential Moving Average for Mass Index (default to 9)
1389
+ # @option opts [Integer] :sum_period The number of observations, per period, to calculate the sum of the Exponetinal Moving Average Ratios for Mass Index (default to 25)
1390
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1391
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1392
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1393
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1394
+ # @return [ApiResponseSecurityMassIndex]
1395
+ def get_security_price_technicals_mi(identifier, opts = {})
1396
+ data, _status_code, _headers = get_security_price_technicals_mi_with_http_info(identifier, opts)
1397
+ return data
1398
+ end
1399
+
1400
+ # Mass Index
1401
+ # Returns the Mass Index values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1402
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1403
+ # @param [Hash] opts the optional parameters
1404
+ # @option opts [Integer] :ema_period The number of observations, per period, to calculate the single Exponential Moving Average and the Double Exponential Moving Average for Mass Index
1405
+ # @option opts [Integer] :sum_period The number of observations, per period, to calculate the sum of the Exponetinal Moving Average Ratios for Mass Index
1406
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1407
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1408
+ # @option opts [Integer] :page_size The number of results to return
1409
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1410
+ # @return [Array<(ApiResponseSecurityMassIndex, Fixnum, Hash)>] ApiResponseSecurityMassIndex data, response status code and response headers
1411
+ def get_security_price_technicals_mi_with_http_info(identifier, opts = {})
1412
+ if @api_client.config.debugging
1413
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_mi ..."
1414
+ end
1415
+ # verify the required parameter 'identifier' is set
1416
+ if @api_client.config.client_side_validation && identifier.nil?
1417
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_mi"
1418
+ end
1419
+ if @api_client.config.client_side_validation && !opts[:'ema_period'].nil? && opts[:'ema_period'] < 2
1420
+ fail ArgumentError, 'invalid value for "opts[:"ema_period"]" when calling TechnicalApi.get_security_price_technicals_mi, must be greater than or equal to 2.'
1421
+ end
1422
+
1423
+ if @api_client.config.client_side_validation && !opts[:'sum_period'].nil? && opts[:'sum_period'] < 3
1424
+ fail ArgumentError, 'invalid value for "opts[:"sum_period"]" when calling TechnicalApi.get_security_price_technicals_mi, must be greater than or equal to 3.'
1425
+ end
1426
+
1427
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1428
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_mi, must be smaller than or equal to 10000.'
1429
+ end
1430
+
1431
+ # resource path
1432
+ local_var_path = "/securities/{identifier}/prices/technicals/mi".sub('{' + 'identifier' + '}', identifier.to_s)
1433
+
1434
+ # query parameters
1435
+ query_params = {}
1436
+ query_params[:'ema_period'] = opts[:'ema_period'] if !opts[:'ema_period'].nil?
1437
+ query_params[:'sum_period'] = opts[:'sum_period'] if !opts[:'sum_period'].nil?
1438
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1439
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1440
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1441
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1442
+
1443
+ # header parameters
1444
+ header_params = {}
1445
+ # HTTP header 'Accept' (if needed)
1446
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1447
+
1448
+ # form parameters
1449
+ form_params = {}
1450
+
1451
+ # http body (model)
1452
+ post_body = nil
1453
+ auth_names = ['ApiKeyAuth']
1454
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1455
+ :header_params => header_params,
1456
+ :query_params => query_params,
1457
+ :form_params => form_params,
1458
+ :body => post_body,
1459
+ :auth_names => auth_names,
1460
+ :return_type => 'ApiResponseSecurityMassIndex')
1461
+ if @api_client.config.debugging
1462
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_mi\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1463
+ end
1464
+ return data, status_code, headers
1465
+ end
1466
+
1467
+ # Negative Volume Index
1468
+ # Returns the Negative Volume Index values of Stock Prices for the Security with the given `identifier`
1469
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1470
+ # @param [Hash] opts the optional parameters
1471
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1472
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1473
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1474
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1475
+ # @return [ApiResponseSecurityNegativeVolumeIndex]
1476
+ def get_security_price_technicals_nvi(identifier, opts = {})
1477
+ data, _status_code, _headers = get_security_price_technicals_nvi_with_http_info(identifier, opts)
1478
+ return data
1479
+ end
1480
+
1481
+ # Negative Volume Index
1482
+ # Returns the Negative Volume Index values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1483
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1484
+ # @param [Hash] opts the optional parameters
1485
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1486
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1487
+ # @option opts [Integer] :page_size The number of results to return
1488
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1489
+ # @return [Array<(ApiResponseSecurityNegativeVolumeIndex, Fixnum, Hash)>] ApiResponseSecurityNegativeVolumeIndex data, response status code and response headers
1490
+ def get_security_price_technicals_nvi_with_http_info(identifier, opts = {})
1491
+ if @api_client.config.debugging
1492
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_nvi ..."
1493
+ end
1494
+ # verify the required parameter 'identifier' is set
1495
+ if @api_client.config.client_side_validation && identifier.nil?
1496
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_nvi"
1497
+ end
1498
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1499
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_nvi, must be smaller than or equal to 10000.'
1500
+ end
1501
+
1502
+ # resource path
1503
+ local_var_path = "/securities/{identifier}/prices/technicals/nvi".sub('{' + 'identifier' + '}', identifier.to_s)
1504
+
1505
+ # query parameters
1506
+ query_params = {}
1507
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1508
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1509
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1510
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1511
+
1512
+ # header parameters
1513
+ header_params = {}
1514
+ # HTTP header 'Accept' (if needed)
1515
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1516
+
1517
+ # form parameters
1518
+ form_params = {}
1519
+
1520
+ # http body (model)
1521
+ post_body = nil
1522
+ auth_names = ['ApiKeyAuth']
1523
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1524
+ :header_params => header_params,
1525
+ :query_params => query_params,
1526
+ :form_params => form_params,
1527
+ :body => post_body,
1528
+ :auth_names => auth_names,
1529
+ :return_type => 'ApiResponseSecurityNegativeVolumeIndex')
1530
+ if @api_client.config.debugging
1531
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_nvi\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1532
+ end
1533
+ return data, status_code, headers
1534
+ end
1535
+
1536
+ # On-balance Volume
1537
+ # Returns the On-balance Volume values of Stock Prices for the Security with the given `identifier`
1538
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1539
+ # @param [Hash] opts the optional parameters
1540
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1541
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1542
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1543
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1544
+ # @return [ApiResponseSecurityOnBalanceVolume]
1545
+ def get_security_price_technicals_obv(identifier, opts = {})
1546
+ data, _status_code, _headers = get_security_price_technicals_obv_with_http_info(identifier, opts)
1547
+ return data
1548
+ end
1549
+
1550
+ # On-balance Volume
1551
+ # Returns the On-balance Volume values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1552
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1553
+ # @param [Hash] opts the optional parameters
1554
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1555
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1556
+ # @option opts [Integer] :page_size The number of results to return
1557
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1558
+ # @return [Array<(ApiResponseSecurityOnBalanceVolume, Fixnum, Hash)>] ApiResponseSecurityOnBalanceVolume data, response status code and response headers
1559
+ def get_security_price_technicals_obv_with_http_info(identifier, opts = {})
1560
+ if @api_client.config.debugging
1561
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_obv ..."
1562
+ end
1563
+ # verify the required parameter 'identifier' is set
1564
+ if @api_client.config.client_side_validation && identifier.nil?
1565
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_obv"
1566
+ end
1567
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1568
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_obv, must be smaller than or equal to 10000.'
1569
+ end
1570
+
1571
+ # resource path
1572
+ local_var_path = "/securities/{identifier}/prices/technicals/obv".sub('{' + 'identifier' + '}', identifier.to_s)
1573
+
1574
+ # query parameters
1575
+ query_params = {}
1576
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1577
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1578
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1579
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1580
+
1581
+ # header parameters
1582
+ header_params = {}
1583
+ # HTTP header 'Accept' (if needed)
1584
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1585
+
1586
+ # form parameters
1587
+ form_params = {}
1588
+
1589
+ # http body (model)
1590
+ post_body = nil
1591
+ auth_names = ['ApiKeyAuth']
1592
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1593
+ :header_params => header_params,
1594
+ :query_params => query_params,
1595
+ :form_params => form_params,
1596
+ :body => post_body,
1597
+ :auth_names => auth_names,
1598
+ :return_type => 'ApiResponseSecurityOnBalanceVolume')
1599
+ if @api_client.config.debugging
1600
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_obv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1601
+ end
1602
+ return data, status_code, headers
1603
+ end
1604
+
1605
+ # On-balance Volume Mean
1606
+ # Returns the On-balance Volume Mean values of Stock Prices for the Security with the given `identifier`
1607
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1608
+ # @param [Hash] opts the optional parameters
1609
+ # @option opts [Integer] :period The number of observations, per period, to calculate On-balance Volume Mean (default to 10)
1610
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1611
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1612
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1613
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1614
+ # @return [ApiResponseSecurityOnBalanceVolumeMean]
1615
+ def get_security_price_technicals_obv_mean(identifier, opts = {})
1616
+ data, _status_code, _headers = get_security_price_technicals_obv_mean_with_http_info(identifier, opts)
1617
+ return data
1618
+ end
1619
+
1620
+ # On-balance Volume Mean
1621
+ # Returns the On-balance Volume Mean values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1622
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1623
+ # @param [Hash] opts the optional parameters
1624
+ # @option opts [Integer] :period The number of observations, per period, to calculate On-balance Volume Mean
1625
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1626
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1627
+ # @option opts [Integer] :page_size The number of results to return
1628
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1629
+ # @return [Array<(ApiResponseSecurityOnBalanceVolumeMean, Fixnum, Hash)>] ApiResponseSecurityOnBalanceVolumeMean data, response status code and response headers
1630
+ def get_security_price_technicals_obv_mean_with_http_info(identifier, opts = {})
1631
+ if @api_client.config.debugging
1632
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_obv_mean ..."
1633
+ end
1634
+ # verify the required parameter 'identifier' is set
1635
+ if @api_client.config.client_side_validation && identifier.nil?
1636
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_obv_mean"
1637
+ end
1638
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 4
1639
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_obv_mean, must be greater than or equal to 4.'
1640
+ end
1641
+
1642
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1643
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_obv_mean, must be smaller than or equal to 10000.'
1644
+ end
1645
+
1646
+ # resource path
1647
+ local_var_path = "/securities/{identifier}/prices/technicals/obv_mean".sub('{' + 'identifier' + '}', identifier.to_s)
1648
+
1649
+ # query parameters
1650
+ query_params = {}
1651
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
1652
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1653
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1654
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1655
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1656
+
1657
+ # header parameters
1658
+ header_params = {}
1659
+ # HTTP header 'Accept' (if needed)
1660
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1661
+
1662
+ # form parameters
1663
+ form_params = {}
1664
+
1665
+ # http body (model)
1666
+ post_body = nil
1667
+ auth_names = ['ApiKeyAuth']
1668
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1669
+ :header_params => header_params,
1670
+ :query_params => query_params,
1671
+ :form_params => form_params,
1672
+ :body => post_body,
1673
+ :auth_names => auth_names,
1674
+ :return_type => 'ApiResponseSecurityOnBalanceVolumeMean')
1675
+ if @api_client.config.debugging
1676
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_obv_mean\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1677
+ end
1678
+ return data, status_code, headers
1679
+ end
1680
+
1681
+ # Relative Strength Index
1682
+ # Returns the Relative Strength Index values of Stock Prices for the Security with the given `identifier`
1683
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1684
+ # @param [Hash] opts the optional parameters
1685
+ # @option opts [Integer] :period The number of observations, per period, to calculate Relative Strength Index (default to 14)
1686
+ # @option opts [String] :price_key The Stock Price field to use when calculating Relative Strength Index (default to close)
1687
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1688
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1689
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1690
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1691
+ # @return [ApiResponseSecurityRelativeStrengthIndex]
1692
+ def get_security_price_technicals_rsi(identifier, opts = {})
1693
+ data, _status_code, _headers = get_security_price_technicals_rsi_with_http_info(identifier, opts)
1694
+ return data
1695
+ end
1696
+
1697
+ # Relative Strength Index
1698
+ # Returns the Relative Strength Index values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1699
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1700
+ # @param [Hash] opts the optional parameters
1701
+ # @option opts [Integer] :period The number of observations, per period, to calculate Relative Strength Index
1702
+ # @option opts [String] :price_key The Stock Price field to use when calculating Relative Strength Index
1703
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1704
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1705
+ # @option opts [Integer] :page_size The number of results to return
1706
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1707
+ # @return [Array<(ApiResponseSecurityRelativeStrengthIndex, Fixnum, Hash)>] ApiResponseSecurityRelativeStrengthIndex data, response status code and response headers
1708
+ def get_security_price_technicals_rsi_with_http_info(identifier, opts = {})
1709
+ if @api_client.config.debugging
1710
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_rsi ..."
1711
+ end
1712
+ # verify the required parameter 'identifier' is set
1713
+ if @api_client.config.client_side_validation && identifier.nil?
1714
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_rsi"
1715
+ end
1716
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 4
1717
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_rsi, must be greater than or equal to 4.'
1718
+ end
1719
+
1720
+ if @api_client.config.client_side_validation && opts[:'price_key'] && !['open', 'high', 'low', 'close', 'volume'].include?(opts[:'price_key'])
1721
+ fail ArgumentError, 'invalid value for "price_key", must be one of open, high, low, close, volume'
1722
+ end
1723
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1724
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_rsi, must be smaller than or equal to 10000.'
1725
+ end
1726
+
1727
+ # resource path
1728
+ local_var_path = "/securities/{identifier}/prices/technicals/rsi".sub('{' + 'identifier' + '}', identifier.to_s)
1729
+
1730
+ # query parameters
1731
+ query_params = {}
1732
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
1733
+ query_params[:'price_key'] = opts[:'price_key'] if !opts[:'price_key'].nil?
1734
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1735
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1736
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1737
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1738
+
1739
+ # header parameters
1740
+ header_params = {}
1741
+ # HTTP header 'Accept' (if needed)
1742
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1743
+
1744
+ # form parameters
1745
+ form_params = {}
1746
+
1747
+ # http body (model)
1748
+ post_body = nil
1749
+ auth_names = ['ApiKeyAuth']
1750
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1751
+ :header_params => header_params,
1752
+ :query_params => query_params,
1753
+ :form_params => form_params,
1754
+ :body => post_body,
1755
+ :auth_names => auth_names,
1756
+ :return_type => 'ApiResponseSecurityRelativeStrengthIndex')
1757
+ if @api_client.config.debugging
1758
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_rsi\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1759
+ end
1760
+ return data, status_code, headers
1761
+ end
1762
+
1763
+ # Simple Moving Average
1764
+ # Returns the Simple Moving Average values of Stock Prices for the Security with the given `identifier`
1765
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1766
+ # @param [Hash] opts the optional parameters
1767
+ # @option opts [Integer] :period The number of observations, per period, to calculate Simple Moving Average (default to 20)
1768
+ # @option opts [String] :price_key The Stock Price field to use when calculating Simple Moving Average (default to close)
1769
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1770
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1771
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1772
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1773
+ # @return [ApiResponseSecuritySimpleMovingAverage]
1774
+ def get_security_price_technicals_sma(identifier, opts = {})
1775
+ data, _status_code, _headers = get_security_price_technicals_sma_with_http_info(identifier, opts)
1776
+ return data
1777
+ end
1778
+
1779
+ # Simple Moving Average
1780
+ # Returns the Simple Moving Average values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1781
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1782
+ # @param [Hash] opts the optional parameters
1783
+ # @option opts [Integer] :period The number of observations, per period, to calculate Simple Moving Average
1784
+ # @option opts [String] :price_key The Stock Price field to use when calculating Simple Moving Average
1785
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1786
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1787
+ # @option opts [Integer] :page_size The number of results to return
1788
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1789
+ # @return [Array<(ApiResponseSecuritySimpleMovingAverage, Fixnum, Hash)>] ApiResponseSecuritySimpleMovingAverage data, response status code and response headers
1790
+ def get_security_price_technicals_sma_with_http_info(identifier, opts = {})
1791
+ if @api_client.config.debugging
1792
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_sma ..."
1793
+ end
1794
+ # verify the required parameter 'identifier' is set
1795
+ if @api_client.config.client_side_validation && identifier.nil?
1796
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_sma"
1797
+ end
1798
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 5
1799
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_sma, must be greater than or equal to 5.'
1800
+ end
1801
+
1802
+ if @api_client.config.client_side_validation && opts[:'price_key'] && !['open', 'high', 'low', 'close', 'volume'].include?(opts[:'price_key'])
1803
+ fail ArgumentError, 'invalid value for "price_key", must be one of open, high, low, close, volume'
1804
+ end
1805
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1806
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_sma, must be smaller than or equal to 10000.'
1807
+ end
1808
+
1809
+ # resource path
1810
+ local_var_path = "/securities/{identifier}/prices/technicals/sma".sub('{' + 'identifier' + '}', identifier.to_s)
1811
+
1812
+ # query parameters
1813
+ query_params = {}
1814
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
1815
+ query_params[:'price_key'] = opts[:'price_key'] if !opts[:'price_key'].nil?
1816
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1817
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1818
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1819
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1820
+
1821
+ # header parameters
1822
+ header_params = {}
1823
+ # HTTP header 'Accept' (if needed)
1824
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1825
+
1826
+ # form parameters
1827
+ form_params = {}
1828
+
1829
+ # http body (model)
1830
+ post_body = nil
1831
+ auth_names = ['ApiKeyAuth']
1832
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1833
+ :header_params => header_params,
1834
+ :query_params => query_params,
1835
+ :form_params => form_params,
1836
+ :body => post_body,
1837
+ :auth_names => auth_names,
1838
+ :return_type => 'ApiResponseSecuritySimpleMovingAverage')
1839
+ if @api_client.config.debugging
1840
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_sma\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1841
+ end
1842
+ return data, status_code, headers
1843
+ end
1844
+
1845
+ # Stochastic Oscillator
1846
+ # Returns the Stochastic Oscillator values of Stock Prices for the Security with the given `identifier`
1847
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1848
+ # @param [Hash] opts the optional parameters
1849
+ # @option opts [Integer] :period The number of observations, per period, to calculate %K of Stochastic Oscillator (default to 14)
1850
+ # @option opts [Integer] :signal_period The number of observations, per period, to calculate the %D (the Simple Moving Average of %K) as a signal line for Stochastic Oscillator (default to 3)
1851
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1852
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1853
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1854
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1855
+ # @return [ApiResponseSecurityStochasticOscillator]
1856
+ def get_security_price_technicals_sr(identifier, opts = {})
1857
+ data, _status_code, _headers = get_security_price_technicals_sr_with_http_info(identifier, opts)
1858
+ return data
1859
+ end
1860
+
1861
+ # Stochastic Oscillator
1862
+ # Returns the Stochastic Oscillator values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1863
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1864
+ # @param [Hash] opts the optional parameters
1865
+ # @option opts [Integer] :period The number of observations, per period, to calculate %K of Stochastic Oscillator
1866
+ # @option opts [Integer] :signal_period The number of observations, per period, to calculate the %D (the Simple Moving Average of %K) as a signal line for Stochastic Oscillator
1867
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1868
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1869
+ # @option opts [Integer] :page_size The number of results to return
1870
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1871
+ # @return [Array<(ApiResponseSecurityStochasticOscillator, Fixnum, Hash)>] ApiResponseSecurityStochasticOscillator data, response status code and response headers
1872
+ def get_security_price_technicals_sr_with_http_info(identifier, opts = {})
1873
+ if @api_client.config.debugging
1874
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_sr ..."
1875
+ end
1876
+ # verify the required parameter 'identifier' is set
1877
+ if @api_client.config.client_side_validation && identifier.nil?
1878
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_sr"
1879
+ end
1880
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 3
1881
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_sr, must be greater than or equal to 3.'
1882
+ end
1883
+
1884
+ if @api_client.config.client_side_validation && !opts[:'signal_period'].nil? && opts[:'signal_period'] < 3
1885
+ fail ArgumentError, 'invalid value for "opts[:"signal_period"]" when calling TechnicalApi.get_security_price_technicals_sr, must be greater than or equal to 3.'
1886
+ end
1887
+
1888
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1889
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_sr, must be smaller than or equal to 10000.'
1890
+ end
1891
+
1892
+ # resource path
1893
+ local_var_path = "/securities/{identifier}/prices/technicals/sr".sub('{' + 'identifier' + '}', identifier.to_s)
1894
+
1895
+ # query parameters
1896
+ query_params = {}
1897
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
1898
+ query_params[:'signal_period'] = opts[:'signal_period'] if !opts[:'signal_period'].nil?
1899
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1900
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1901
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1902
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1903
+
1904
+ # header parameters
1905
+ header_params = {}
1906
+ # HTTP header 'Accept' (if needed)
1907
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1908
+
1909
+ # form parameters
1910
+ form_params = {}
1911
+
1912
+ # http body (model)
1913
+ post_body = nil
1914
+ auth_names = ['ApiKeyAuth']
1915
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1916
+ :header_params => header_params,
1917
+ :query_params => query_params,
1918
+ :form_params => form_params,
1919
+ :body => post_body,
1920
+ :auth_names => auth_names,
1921
+ :return_type => 'ApiResponseSecurityStochasticOscillator')
1922
+ if @api_client.config.debugging
1923
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_sr\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1924
+ end
1925
+ return data, status_code, headers
1926
+ end
1927
+
1928
+ # Triple Exponential Average
1929
+ # Returns the Simple Moving Average values of Stock Prices for the Security with the given `identifier`
1930
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1931
+ # @param [Hash] opts the optional parameters
1932
+ # @option opts [Integer] :period The number of observations, per period, to calculate Exponential Moving Average for Triple Exponential Average (default to 15)
1933
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1934
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1935
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
1936
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1937
+ # @return [ApiResponseSecurityTripleExponentialAverage]
1938
+ def get_security_price_technicals_trix(identifier, opts = {})
1939
+ data, _status_code, _headers = get_security_price_technicals_trix_with_http_info(identifier, opts)
1940
+ return data
1941
+ end
1942
+
1943
+ # Triple Exponential Average
1944
+ # Returns the Simple Moving Average values of Stock Prices for the Security with the given &#x60;identifier&#x60;
1945
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
1946
+ # @param [Hash] opts the optional parameters
1947
+ # @option opts [Integer] :period The number of observations, per period, to calculate Exponential Moving Average for Triple Exponential Average
1948
+ # @option opts [String] :start_date Return technical indicator values on or after the date
1949
+ # @option opts [String] :end_date Return technical indicator values on or before the date
1950
+ # @option opts [Integer] :page_size The number of results to return
1951
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
1952
+ # @return [Array<(ApiResponseSecurityTripleExponentialAverage, Fixnum, Hash)>] ApiResponseSecurityTripleExponentialAverage data, response status code and response headers
1953
+ def get_security_price_technicals_trix_with_http_info(identifier, opts = {})
1954
+ if @api_client.config.debugging
1955
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_trix ..."
1956
+ end
1957
+ # verify the required parameter 'identifier' is set
1958
+ if @api_client.config.client_side_validation && identifier.nil?
1959
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_trix"
1960
+ end
1961
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 2
1962
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_trix, must be greater than or equal to 2.'
1963
+ end
1964
+
1965
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
1966
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_trix, must be smaller than or equal to 10000.'
1967
+ end
1968
+
1969
+ # resource path
1970
+ local_var_path = "/securities/{identifier}/prices/technicals/trix".sub('{' + 'identifier' + '}', identifier.to_s)
1971
+
1972
+ # query parameters
1973
+ query_params = {}
1974
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
1975
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
1976
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
1977
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1978
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
1979
+
1980
+ # header parameters
1981
+ header_params = {}
1982
+ # HTTP header 'Accept' (if needed)
1983
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1984
+
1985
+ # form parameters
1986
+ form_params = {}
1987
+
1988
+ # http body (model)
1989
+ post_body = nil
1990
+ auth_names = ['ApiKeyAuth']
1991
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
1992
+ :header_params => header_params,
1993
+ :query_params => query_params,
1994
+ :form_params => form_params,
1995
+ :body => post_body,
1996
+ :auth_names => auth_names,
1997
+ :return_type => 'ApiResponseSecurityTripleExponentialAverage')
1998
+ if @api_client.config.debugging
1999
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_trix\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2000
+ end
2001
+ return data, status_code, headers
2002
+ end
2003
+
2004
+ # True Strength Index
2005
+ # Returns the True Strength Index values of Stock Prices for the Security with the given `identifier`
2006
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2007
+ # @param [Hash] opts the optional parameters
2008
+ # @option opts [Integer] :low_period The number of observations, per period, to calculate low period Exponential Moving Average for smoothing in True Strength Index (default to 13)
2009
+ # @option opts [Integer] :high_period The number of observations, per period, to calculate high period Exponential Moving Average for smoothing in True Strength Index (default to 25)
2010
+ # @option opts [String] :price_key The Stock Price field to use when calculating True Strength Index (default to close)
2011
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2012
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2013
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
2014
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2015
+ # @return [ApiResponseSecurityTrueStrengthIndex]
2016
+ def get_security_price_technicals_tsi(identifier, opts = {})
2017
+ data, _status_code, _headers = get_security_price_technicals_tsi_with_http_info(identifier, opts)
2018
+ return data
2019
+ end
2020
+
2021
+ # True Strength Index
2022
+ # Returns the True Strength Index values of Stock Prices for the Security with the given &#x60;identifier&#x60;
2023
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2024
+ # @param [Hash] opts the optional parameters
2025
+ # @option opts [Integer] :low_period The number of observations, per period, to calculate low period Exponential Moving Average for smoothing in True Strength Index
2026
+ # @option opts [Integer] :high_period The number of observations, per period, to calculate high period Exponential Moving Average for smoothing in True Strength Index
2027
+ # @option opts [String] :price_key The Stock Price field to use when calculating True Strength Index
2028
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2029
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2030
+ # @option opts [Integer] :page_size The number of results to return
2031
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2032
+ # @return [Array<(ApiResponseSecurityTrueStrengthIndex, Fixnum, Hash)>] ApiResponseSecurityTrueStrengthIndex data, response status code and response headers
2033
+ def get_security_price_technicals_tsi_with_http_info(identifier, opts = {})
2034
+ if @api_client.config.debugging
2035
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_tsi ..."
2036
+ end
2037
+ # verify the required parameter 'identifier' is set
2038
+ if @api_client.config.client_side_validation && identifier.nil?
2039
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_tsi"
2040
+ end
2041
+ if @api_client.config.client_side_validation && !opts[:'low_period'].nil? && opts[:'low_period'] < 3
2042
+ fail ArgumentError, 'invalid value for "opts[:"low_period"]" when calling TechnicalApi.get_security_price_technicals_tsi, must be greater than or equal to 3.'
2043
+ end
2044
+
2045
+ if @api_client.config.client_side_validation && !opts[:'high_period'].nil? && opts[:'high_period'] < 3
2046
+ fail ArgumentError, 'invalid value for "opts[:"high_period"]" when calling TechnicalApi.get_security_price_technicals_tsi, must be greater than or equal to 3.'
2047
+ end
2048
+
2049
+ if @api_client.config.client_side_validation && opts[:'price_key'] && !['open', 'high', 'low', 'close', 'volume'].include?(opts[:'price_key'])
2050
+ fail ArgumentError, 'invalid value for "price_key", must be one of open, high, low, close, volume'
2051
+ end
2052
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
2053
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_tsi, must be smaller than or equal to 10000.'
2054
+ end
2055
+
2056
+ # resource path
2057
+ local_var_path = "/securities/{identifier}/prices/technicals/tsi".sub('{' + 'identifier' + '}', identifier.to_s)
2058
+
2059
+ # query parameters
2060
+ query_params = {}
2061
+ query_params[:'low_period'] = opts[:'low_period'] if !opts[:'low_period'].nil?
2062
+ query_params[:'high_period'] = opts[:'high_period'] if !opts[:'high_period'].nil?
2063
+ query_params[:'price_key'] = opts[:'price_key'] if !opts[:'price_key'].nil?
2064
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
2065
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
2066
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
2067
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
2068
+
2069
+ # header parameters
2070
+ header_params = {}
2071
+ # HTTP header 'Accept' (if needed)
2072
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2073
+
2074
+ # form parameters
2075
+ form_params = {}
2076
+
2077
+ # http body (model)
2078
+ post_body = nil
2079
+ auth_names = ['ApiKeyAuth']
2080
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2081
+ :header_params => header_params,
2082
+ :query_params => query_params,
2083
+ :form_params => form_params,
2084
+ :body => post_body,
2085
+ :auth_names => auth_names,
2086
+ :return_type => 'ApiResponseSecurityTrueStrengthIndex')
2087
+ if @api_client.config.debugging
2088
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_tsi\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2089
+ end
2090
+ return data, status_code, headers
2091
+ end
2092
+
2093
+ # Ultimate Oscillator
2094
+ # Returns the Ultimate Oscillator values of Stock Prices for the Security with the given `identifier`
2095
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2096
+ # @param [Hash] opts the optional parameters
2097
+ # @option opts [Integer] :short_period The number of observations, per period, to calculate the short period for Ultimate Oscillator (default to 7)
2098
+ # @option opts [Integer] :medium_period The number of observations, per period, to calculate the medium period for Ultimate Oscillator (default to 14)
2099
+ # @option opts [Integer] :long_period The number of observations, per period, to calculate the long period for Ultimate Oscillator (default to 28)
2100
+ # @option opts [Float] :short_weight The weight of short Buying Pressure average for Ultimate Oscillator (default to 4.0)
2101
+ # @option opts [Float] :medium_weight The weight of medium Buying Pressure average for Ultimate Oscillator (default to 2.0)
2102
+ # @option opts [Float] :long_weight The weight of long Buying Pressure average for Ultimate Oscillator (default to 1.0)
2103
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2104
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2105
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
2106
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2107
+ # @return [ApiResponseSecurityUltimateOscillator]
2108
+ def get_security_price_technicals_uo(identifier, opts = {})
2109
+ data, _status_code, _headers = get_security_price_technicals_uo_with_http_info(identifier, opts)
2110
+ return data
2111
+ end
2112
+
2113
+ # Ultimate Oscillator
2114
+ # Returns the Ultimate Oscillator values of Stock Prices for the Security with the given &#x60;identifier&#x60;
2115
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2116
+ # @param [Hash] opts the optional parameters
2117
+ # @option opts [Integer] :short_period The number of observations, per period, to calculate the short period for Ultimate Oscillator
2118
+ # @option opts [Integer] :medium_period The number of observations, per period, to calculate the medium period for Ultimate Oscillator
2119
+ # @option opts [Integer] :long_period The number of observations, per period, to calculate the long period for Ultimate Oscillator
2120
+ # @option opts [Float] :short_weight The weight of short Buying Pressure average for Ultimate Oscillator
2121
+ # @option opts [Float] :medium_weight The weight of medium Buying Pressure average for Ultimate Oscillator
2122
+ # @option opts [Float] :long_weight The weight of long Buying Pressure average for Ultimate Oscillator
2123
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2124
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2125
+ # @option opts [Integer] :page_size The number of results to return
2126
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2127
+ # @return [Array<(ApiResponseSecurityUltimateOscillator, Fixnum, Hash)>] ApiResponseSecurityUltimateOscillator data, response status code and response headers
2128
+ def get_security_price_technicals_uo_with_http_info(identifier, opts = {})
2129
+ if @api_client.config.debugging
2130
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_uo ..."
2131
+ end
2132
+ # verify the required parameter 'identifier' is set
2133
+ if @api_client.config.client_side_validation && identifier.nil?
2134
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_uo"
2135
+ end
2136
+ if @api_client.config.client_side_validation && !opts[:'long_period'].nil? && opts[:'long_period'] < 4
2137
+ fail ArgumentError, 'invalid value for "opts[:"long_period"]" when calling TechnicalApi.get_security_price_technicals_uo, must be greater than or equal to 4.'
2138
+ end
2139
+
2140
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
2141
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_uo, must be smaller than or equal to 10000.'
2142
+ end
2143
+
2144
+ # resource path
2145
+ local_var_path = "/securities/{identifier}/prices/technicals/uo".sub('{' + 'identifier' + '}', identifier.to_s)
2146
+
2147
+ # query parameters
2148
+ query_params = {}
2149
+ query_params[:'short_period'] = opts[:'short_period'] if !opts[:'short_period'].nil?
2150
+ query_params[:'medium_period'] = opts[:'medium_period'] if !opts[:'medium_period'].nil?
2151
+ query_params[:'long_period'] = opts[:'long_period'] if !opts[:'long_period'].nil?
2152
+ query_params[:'short_weight'] = opts[:'short_weight'] if !opts[:'short_weight'].nil?
2153
+ query_params[:'medium_weight'] = opts[:'medium_weight'] if !opts[:'medium_weight'].nil?
2154
+ query_params[:'long_weight'] = opts[:'long_weight'] if !opts[:'long_weight'].nil?
2155
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
2156
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
2157
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
2158
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
2159
+
2160
+ # header parameters
2161
+ header_params = {}
2162
+ # HTTP header 'Accept' (if needed)
2163
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2164
+
2165
+ # form parameters
2166
+ form_params = {}
2167
+
2168
+ # http body (model)
2169
+ post_body = nil
2170
+ auth_names = ['ApiKeyAuth']
2171
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2172
+ :header_params => header_params,
2173
+ :query_params => query_params,
2174
+ :form_params => form_params,
2175
+ :body => post_body,
2176
+ :auth_names => auth_names,
2177
+ :return_type => 'ApiResponseSecurityUltimateOscillator')
2178
+ if @api_client.config.debugging
2179
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_uo\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2180
+ end
2181
+ return data, status_code, headers
2182
+ end
2183
+
2184
+ # Vortex Indicator
2185
+ # Returns the Vortex Indicator values of Stock Prices for the Security with the given `identifier`
2186
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2187
+ # @param [Hash] opts the optional parameters
2188
+ # @option opts [Integer] :period The number of observations, per period, to calculate Vortex Indicator (default to 14)
2189
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2190
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2191
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
2192
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2193
+ # @return [ApiResponseSecurityVortexIndicator]
2194
+ def get_security_price_technicals_vi(identifier, opts = {})
2195
+ data, _status_code, _headers = get_security_price_technicals_vi_with_http_info(identifier, opts)
2196
+ return data
2197
+ end
2198
+
2199
+ # Vortex Indicator
2200
+ # Returns the Vortex Indicator values of Stock Prices for the Security with the given &#x60;identifier&#x60;
2201
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2202
+ # @param [Hash] opts the optional parameters
2203
+ # @option opts [Integer] :period The number of observations, per period, to calculate Vortex Indicator
2204
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2205
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2206
+ # @option opts [Integer] :page_size The number of results to return
2207
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2208
+ # @return [Array<(ApiResponseSecurityVortexIndicator, Fixnum, Hash)>] ApiResponseSecurityVortexIndicator data, response status code and response headers
2209
+ def get_security_price_technicals_vi_with_http_info(identifier, opts = {})
2210
+ if @api_client.config.debugging
2211
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_vi ..."
2212
+ end
2213
+ # verify the required parameter 'identifier' is set
2214
+ if @api_client.config.client_side_validation && identifier.nil?
2215
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_vi"
2216
+ end
2217
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 4
2218
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_vi, must be greater than or equal to 4.'
2219
+ end
2220
+
2221
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
2222
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_vi, must be smaller than or equal to 10000.'
2223
+ end
2224
+
2225
+ # resource path
2226
+ local_var_path = "/securities/{identifier}/prices/technicals/vi".sub('{' + 'identifier' + '}', identifier.to_s)
2227
+
2228
+ # query parameters
2229
+ query_params = {}
2230
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
2231
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
2232
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
2233
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
2234
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
2235
+
2236
+ # header parameters
2237
+ header_params = {}
2238
+ # HTTP header 'Accept' (if needed)
2239
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2240
+
2241
+ # form parameters
2242
+ form_params = {}
2243
+
2244
+ # http body (model)
2245
+ post_body = nil
2246
+ auth_names = ['ApiKeyAuth']
2247
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2248
+ :header_params => header_params,
2249
+ :query_params => query_params,
2250
+ :form_params => form_params,
2251
+ :body => post_body,
2252
+ :auth_names => auth_names,
2253
+ :return_type => 'ApiResponseSecurityVortexIndicator')
2254
+ if @api_client.config.debugging
2255
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_vi\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2256
+ end
2257
+ return data, status_code, headers
2258
+ end
2259
+
2260
+ # Volume-price Trend
2261
+ # Returns the Volume-price Trend values of Stock Prices for the Security with the given `identifier`
2262
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2263
+ # @param [Hash] opts the optional parameters
2264
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2265
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2266
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
2267
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2268
+ # @return [ApiResponseSecurityVolumePriceTrend]
2269
+ def get_security_price_technicals_vpt(identifier, opts = {})
2270
+ data, _status_code, _headers = get_security_price_technicals_vpt_with_http_info(identifier, opts)
2271
+ return data
2272
+ end
2273
+
2274
+ # Volume-price Trend
2275
+ # Returns the Volume-price Trend values of Stock Prices for the Security with the given &#x60;identifier&#x60;
2276
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2277
+ # @param [Hash] opts the optional parameters
2278
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2279
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2280
+ # @option opts [Integer] :page_size The number of results to return
2281
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2282
+ # @return [Array<(ApiResponseSecurityVolumePriceTrend, Fixnum, Hash)>] ApiResponseSecurityVolumePriceTrend data, response status code and response headers
2283
+ def get_security_price_technicals_vpt_with_http_info(identifier, opts = {})
2284
+ if @api_client.config.debugging
2285
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_vpt ..."
2286
+ end
2287
+ # verify the required parameter 'identifier' is set
2288
+ if @api_client.config.client_side_validation && identifier.nil?
2289
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_vpt"
2290
+ end
2291
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
2292
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_vpt, must be smaller than or equal to 10000.'
2293
+ end
2294
+
2295
+ # resource path
2296
+ local_var_path = "/securities/{identifier}/prices/technicals/vpt".sub('{' + 'identifier' + '}', identifier.to_s)
2297
+
2298
+ # query parameters
2299
+ query_params = {}
2300
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
2301
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
2302
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
2303
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
2304
+
2305
+ # header parameters
2306
+ header_params = {}
2307
+ # HTTP header 'Accept' (if needed)
2308
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2309
+
2310
+ # form parameters
2311
+ form_params = {}
2312
+
2313
+ # http body (model)
2314
+ post_body = nil
2315
+ auth_names = ['ApiKeyAuth']
2316
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2317
+ :header_params => header_params,
2318
+ :query_params => query_params,
2319
+ :form_params => form_params,
2320
+ :body => post_body,
2321
+ :auth_names => auth_names,
2322
+ :return_type => 'ApiResponseSecurityVolumePriceTrend')
2323
+ if @api_client.config.debugging
2324
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_vpt\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2325
+ end
2326
+ return data, status_code, headers
2327
+ end
2328
+
2329
+ # Volume Weighted Average Price
2330
+ # Returns the Volume Weighted Average Price values of Stock Prices for the Security with the given `identifier`
2331
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2332
+ # @param [Hash] opts the optional parameters
2333
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2334
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2335
+ # @option opts [Integer] :page_size The number of results to return (default to 100)
2336
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2337
+ # @return [ApiResponseSecurityVolumeWeightedAveragePrice]
2338
+ def get_security_price_technicals_vwap(identifier, opts = {})
2339
+ data, _status_code, _headers = get_security_price_technicals_vwap_with_http_info(identifier, opts)
2340
+ return data
2341
+ end
2342
+
2343
+ # Volume Weighted Average Price
2344
+ # Returns the Volume Weighted Average Price values of Stock Prices for the Security with the given &#x60;identifier&#x60;
2345
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2346
+ # @param [Hash] opts the optional parameters
2347
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2348
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2349
+ # @option opts [Integer] :page_size The number of results to return
2350
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2351
+ # @return [Array<(ApiResponseSecurityVolumeWeightedAveragePrice, Fixnum, Hash)>] ApiResponseSecurityVolumeWeightedAveragePrice data, response status code and response headers
2352
+ def get_security_price_technicals_vwap_with_http_info(identifier, opts = {})
2353
+ if @api_client.config.debugging
2354
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_vwap ..."
2355
+ end
2356
+ # verify the required parameter 'identifier' is set
2357
+ if @api_client.config.client_side_validation && identifier.nil?
2358
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_vwap"
2359
+ end
2360
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
2361
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_vwap, must be smaller than or equal to 10000.'
2362
+ end
2363
+
2364
+ # resource path
2365
+ local_var_path = "/securities/{identifier}/prices/technicals/vwap".sub('{' + 'identifier' + '}', identifier.to_s)
2366
+
2367
+ # query parameters
2368
+ query_params = {}
2369
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
2370
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
2371
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
2372
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
2373
+
2374
+ # header parameters
2375
+ header_params = {}
2376
+ # HTTP header 'Accept' (if needed)
2377
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2378
+
2379
+ # form parameters
2380
+ form_params = {}
2381
+
2382
+ # http body (model)
2383
+ post_body = nil
2384
+ auth_names = ['ApiKeyAuth']
2385
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2386
+ :header_params => header_params,
2387
+ :query_params => query_params,
2388
+ :form_params => form_params,
2389
+ :body => post_body,
2390
+ :auth_names => auth_names,
2391
+ :return_type => 'ApiResponseSecurityVolumeWeightedAveragePrice')
2392
+ if @api_client.config.debugging
2393
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_vwap\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2394
+ end
2395
+ return data, status_code, headers
2396
+ end
2397
+
2398
+ # Williams %R
2399
+ # Returns the Williams %R values of Stock Prices for the Security with the given `identifier`
2400
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2401
+ # @param [Hash] opts the optional parameters
2402
+ # @option opts [Integer] :period The number of observations, per period, to look-back when calculating Williams %R (default to 14)
2403
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2404
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2405
+ # @option opts [Float] :page_size The number of results to return (default to 100)
2406
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2407
+ # @return [ApiResponseSecurityWilliamsR]
2408
+ def get_security_price_technicals_wr(identifier, opts = {})
2409
+ data, _status_code, _headers = get_security_price_technicals_wr_with_http_info(identifier, opts)
2410
+ return data
2411
+ end
2412
+
2413
+ # Williams %R
2414
+ # Returns the Williams %R values of Stock Prices for the Security with the given &#x60;identifier&#x60;
2415
+ # @param identifier A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)
2416
+ # @param [Hash] opts the optional parameters
2417
+ # @option opts [Integer] :period The number of observations, per period, to look-back when calculating Williams %R
2418
+ # @option opts [String] :start_date Return technical indicator values on or after the date
2419
+ # @option opts [String] :end_date Return technical indicator values on or before the date
2420
+ # @option opts [Float] :page_size The number of results to return
2421
+ # @option opts [String] :next_page Gets the next page of data from a previous API call
2422
+ # @return [Array<(ApiResponseSecurityWilliamsR, Fixnum, Hash)>] ApiResponseSecurityWilliamsR data, response status code and response headers
2423
+ def get_security_price_technicals_wr_with_http_info(identifier, opts = {})
2424
+ if @api_client.config.debugging
2425
+ @api_client.config.logger.debug "Calling API: TechnicalApi.get_security_price_technicals_wr ..."
2426
+ end
2427
+ # verify the required parameter 'identifier' is set
2428
+ if @api_client.config.client_side_validation && identifier.nil?
2429
+ fail ArgumentError, "Missing the required parameter 'identifier' when calling TechnicalApi.get_security_price_technicals_wr"
2430
+ end
2431
+ if @api_client.config.client_side_validation && !opts[:'period'].nil? && opts[:'period'] < 5
2432
+ fail ArgumentError, 'invalid value for "opts[:"period"]" when calling TechnicalApi.get_security_price_technicals_wr, must be greater than or equal to 5.'
2433
+ end
2434
+
2435
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000
2436
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling TechnicalApi.get_security_price_technicals_wr, must be smaller than or equal to 10000.'
2437
+ end
2438
+
2439
+ # resource path
2440
+ local_var_path = "/securities/{identifier}/prices/technicals/wr".sub('{' + 'identifier' + '}', identifier.to_s)
2441
+
2442
+ # query parameters
2443
+ query_params = {}
2444
+ query_params[:'period'] = opts[:'period'] if !opts[:'period'].nil?
2445
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
2446
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
2447
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
2448
+ query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil?
2449
+
2450
+ # header parameters
2451
+ header_params = {}
2452
+ # HTTP header 'Accept' (if needed)
2453
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2454
+
2455
+ # form parameters
2456
+ form_params = {}
2457
+
2458
+ # http body (model)
2459
+ post_body = nil
2460
+ auth_names = ['ApiKeyAuth']
2461
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2462
+ :header_params => header_params,
2463
+ :query_params => query_params,
2464
+ :form_params => form_params,
2465
+ :body => post_body,
2466
+ :auth_names => auth_names,
2467
+ :return_type => 'ApiResponseSecurityWilliamsR')
2468
+ if @api_client.config.debugging
2469
+ @api_client.config.logger.debug "API called: TechnicalApi#get_security_price_technicals_wr\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2470
+ end
2471
+ return data, status_code, headers
2472
+ end
2473
+ end
2474
+ end