tradier 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (119) hide show
  1. data/.yardopts +8 -0
  2. data/LICENSE.md +20 -0
  3. data/README.md +114 -0
  4. data/Rakefile +19 -0
  5. data/lib/tradier.rb +31 -0
  6. data/lib/tradier/account.rb +30 -0
  7. data/lib/tradier/api/accounts.rb +122 -0
  8. data/lib/tradier/api/markets.rb +113 -0
  9. data/lib/tradier/api/orders.rb +84 -0
  10. data/lib/tradier/api/utils.rb +47 -0
  11. data/lib/tradier/api/utils/account.rb +15 -0
  12. data/lib/tradier/api/utils/balance.rb +15 -0
  13. data/lib/tradier/api/utils/base.rb +46 -0
  14. data/lib/tradier/api/utils/event.rb +15 -0
  15. data/lib/tradier/api/utils/expiration.rb +19 -0
  16. data/lib/tradier/api/utils/gainloss.rb +15 -0
  17. data/lib/tradier/api/utils/history.rb +15 -0
  18. data/lib/tradier/api/utils/option_quote.rb +15 -0
  19. data/lib/tradier/api/utils/order.rb +15 -0
  20. data/lib/tradier/api/utils/position.rb +15 -0
  21. data/lib/tradier/api/utils/quote.rb +15 -0
  22. data/lib/tradier/api/utils/strike.rb +15 -0
  23. data/lib/tradier/api/utils/timesales.rb +15 -0
  24. data/lib/tradier/api/utils/watchlist.rb +15 -0
  25. data/lib/tradier/api/watchlists.rb +139 -0
  26. data/lib/tradier/balance.rb +17 -0
  27. data/lib/tradier/base.rb +76 -0
  28. data/lib/tradier/calendar.rb +23 -0
  29. data/lib/tradier/client.rb +89 -0
  30. data/lib/tradier/clock.rb +21 -0
  31. data/lib/tradier/configurable.rb +76 -0
  32. data/lib/tradier/core_ext/enumerable.rb +9 -0
  33. data/lib/tradier/default.rb +75 -0
  34. data/lib/tradier/error.rb +34 -0
  35. data/lib/tradier/error/bad_gateway.rb +11 -0
  36. data/lib/tradier/error/bad_request.rb +10 -0
  37. data/lib/tradier/error/client_error.rb +28 -0
  38. data/lib/tradier/error/configuration_error.rb +6 -0
  39. data/lib/tradier/error/decode_error.rb +9 -0
  40. data/lib/tradier/error/forbidden.rb +10 -0
  41. data/lib/tradier/error/gateway_timeout.rb +11 -0
  42. data/lib/tradier/error/internal_server_error.rb +11 -0
  43. data/lib/tradier/error/not_acceptable.rb +10 -0
  44. data/lib/tradier/error/not_found.rb +10 -0
  45. data/lib/tradier/error/raise_error.rb +31 -0
  46. data/lib/tradier/error/server_error.rb +28 -0
  47. data/lib/tradier/error/service_unavailable.rb +11 -0
  48. data/lib/tradier/error/too_many_requests.rb +12 -0
  49. data/lib/tradier/error/unauthorized.rb +10 -0
  50. data/lib/tradier/error/unprocessable_entity.rb +10 -0
  51. data/lib/tradier/event.rb +8 -0
  52. data/lib/tradier/history.rb +20 -0
  53. data/lib/tradier/option_quote.rb +37 -0
  54. data/lib/tradier/order.rb +14 -0
  55. data/lib/tradier/position.rb +7 -0
  56. data/lib/tradier/profile.rb +14 -0
  57. data/lib/tradier/quote.rb +12 -0
  58. data/lib/tradier/response/parse_json.rb +25 -0
  59. data/lib/tradier/response/raise_error.rb +31 -0
  60. data/lib/tradier/symbol.rb +147 -0
  61. data/lib/tradier/timesales.rb +11 -0
  62. data/lib/tradier/version.rb +3 -0
  63. data/lib/tradier/watchlist.rb +16 -0
  64. data/lib/tradier/watchlist_item.rb +17 -0
  65. data/spec/fixtures/account_balances.json +28 -0
  66. data/spec/fixtures/account_gainloss.json +18 -0
  67. data/spec/fixtures/account_history.json +96 -0
  68. data/spec/fixtures/account_orders.json +833 -0
  69. data/spec/fixtures/account_positions.json +22 -0
  70. data/spec/fixtures/calendar.json +400 -0
  71. data/spec/fixtures/chain.json +2972 -0
  72. data/spec/fixtures/clock.json +10 -0
  73. data/spec/fixtures/expirations.json +18 -0
  74. data/spec/fixtures/history.json +2086 -0
  75. data/spec/fixtures/option_quote.json +14 -0
  76. data/spec/fixtures/option_quotes.json +26 -0
  77. data/spec/fixtures/order.json +1 -0
  78. data/spec/fixtures/order_with_warnings.json +17 -0
  79. data/spec/fixtures/placed_order.json +6 -0
  80. data/spec/fixtures/quote.json +45 -0
  81. data/spec/fixtures/quotes.json +88 -0
  82. data/spec/fixtures/session.json +6 -0
  83. data/spec/fixtures/strikes.json +173 -0
  84. data/spec/fixtures/timesales.json +2956 -0
  85. data/spec/fixtures/user_balances.json +118 -0
  86. data/spec/fixtures/user_gainloss.json +6775 -0
  87. data/spec/fixtures/user_history.json +101 -0
  88. data/spec/fixtures/user_orders.json +57 -0
  89. data/spec/fixtures/user_positions.json +50 -0
  90. data/spec/fixtures/user_profile.json +103 -0
  91. data/spec/fixtures/watchlist.json +30 -0
  92. data/spec/fixtures/watchlist_item.json +6 -0
  93. data/spec/fixtures/watchlists.json +18 -0
  94. data/spec/spec_helper.rb +64 -0
  95. data/spec/tradier/account_spec.rb +76 -0
  96. data/spec/tradier/api/accounts_spec.rb +195 -0
  97. data/spec/tradier/api/markets_spec.rb +219 -0
  98. data/spec/tradier/api/orders_spec.rb +94 -0
  99. data/spec/tradier/api/utils/expiration_spec.rb +8 -0
  100. data/spec/tradier/api/watchlists_spec.rb +164 -0
  101. data/spec/tradier/balance_spec.rb +4 -0
  102. data/spec/tradier/base_spec.rb +11 -0
  103. data/spec/tradier/calendar_spec.rb +27 -0
  104. data/spec/tradier/client_spec.rb +125 -0
  105. data/spec/tradier/clock_spec.rb +73 -0
  106. data/spec/tradier/error/client_error_spec.rb +22 -0
  107. data/spec/tradier/error/server_error_spec.rb +22 -0
  108. data/spec/tradier/error_spec.rb +26 -0
  109. data/spec/tradier/option_quote_spec.rb +61 -0
  110. data/spec/tradier/order_spec.rb +43 -0
  111. data/spec/tradier/position_spec.rb +4 -0
  112. data/spec/tradier/profile_spec.rb +28 -0
  113. data/spec/tradier/quote_spec.rb +29 -0
  114. data/spec/tradier/symbol_spec.rb +54 -0
  115. data/spec/tradier/watchlist_item_spec.rb +48 -0
  116. data/spec/tradier/watchlist_spec.rb +35 -0
  117. data/spec/tradier_spec.rb +105 -0
  118. data/tradier.gemspec +30 -0
  119. metadata +302 -0
metadata ADDED
@@ -0,0 +1,302 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: tradier
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Steve Agalloco
9
+ - Jason Barry
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2013-11-08 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: faraday
17
+ requirement: !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ~>
21
+ - !ruby/object:Gem::Version
22
+ version: '0.8'
23
+ - - <
24
+ - !ruby/object:Gem::Version
25
+ version: '0.10'
26
+ type: :runtime
27
+ prerelease: false
28
+ version_requirements: !ruby/object:Gem::Requirement
29
+ none: false
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: '0.8'
34
+ - - <
35
+ - !ruby/object:Gem::Version
36
+ version: '0.10'
37
+ - !ruby/object:Gem::Dependency
38
+ name: faraday_middleware
39
+ requirement: !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ~>
43
+ - !ruby/object:Gem::Version
44
+ version: '0.8'
45
+ - - <
46
+ - !ruby/object:Gem::Version
47
+ version: '0.10'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ~>
54
+ - !ruby/object:Gem::Version
55
+ version: '0.8'
56
+ - - <
57
+ - !ruby/object:Gem::Version
58
+ version: '0.10'
59
+ - !ruby/object:Gem::Dependency
60
+ name: celluloid
61
+ requirement: !ruby/object:Gem::Requirement
62
+ none: false
63
+ requirements:
64
+ - - ! '>='
65
+ - !ruby/object:Gem::Version
66
+ version: '0'
67
+ type: :runtime
68
+ prerelease: false
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ none: false
71
+ requirements:
72
+ - - ! '>='
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ - !ruby/object:Gem::Dependency
76
+ name: bundler
77
+ requirement: !ruby/object:Gem::Requirement
78
+ none: false
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: '1'
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ none: false
87
+ requirements:
88
+ - - ~>
89
+ - !ruby/object:Gem::Version
90
+ version: '1'
91
+ description: Rubygem for interacting with the Tradier API.
92
+ email:
93
+ - steve.agalloco@gmail.com
94
+ - jay@jcbarry.com
95
+ executables: []
96
+ extensions: []
97
+ extra_rdoc_files: []
98
+ files:
99
+ - .yardopts
100
+ - LICENSE.md
101
+ - README.md
102
+ - Rakefile
103
+ - tradier.gemspec
104
+ - lib/tradier/account.rb
105
+ - lib/tradier/api/accounts.rb
106
+ - lib/tradier/api/markets.rb
107
+ - lib/tradier/api/orders.rb
108
+ - lib/tradier/api/utils/account.rb
109
+ - lib/tradier/api/utils/balance.rb
110
+ - lib/tradier/api/utils/base.rb
111
+ - lib/tradier/api/utils/event.rb
112
+ - lib/tradier/api/utils/expiration.rb
113
+ - lib/tradier/api/utils/gainloss.rb
114
+ - lib/tradier/api/utils/history.rb
115
+ - lib/tradier/api/utils/option_quote.rb
116
+ - lib/tradier/api/utils/order.rb
117
+ - lib/tradier/api/utils/position.rb
118
+ - lib/tradier/api/utils/quote.rb
119
+ - lib/tradier/api/utils/strike.rb
120
+ - lib/tradier/api/utils/timesales.rb
121
+ - lib/tradier/api/utils/watchlist.rb
122
+ - lib/tradier/api/utils.rb
123
+ - lib/tradier/api/watchlists.rb
124
+ - lib/tradier/balance.rb
125
+ - lib/tradier/base.rb
126
+ - lib/tradier/calendar.rb
127
+ - lib/tradier/client.rb
128
+ - lib/tradier/clock.rb
129
+ - lib/tradier/configurable.rb
130
+ - lib/tradier/core_ext/enumerable.rb
131
+ - lib/tradier/default.rb
132
+ - lib/tradier/error/bad_gateway.rb
133
+ - lib/tradier/error/bad_request.rb
134
+ - lib/tradier/error/client_error.rb
135
+ - lib/tradier/error/configuration_error.rb
136
+ - lib/tradier/error/decode_error.rb
137
+ - lib/tradier/error/forbidden.rb
138
+ - lib/tradier/error/gateway_timeout.rb
139
+ - lib/tradier/error/internal_server_error.rb
140
+ - lib/tradier/error/not_acceptable.rb
141
+ - lib/tradier/error/not_found.rb
142
+ - lib/tradier/error/raise_error.rb
143
+ - lib/tradier/error/server_error.rb
144
+ - lib/tradier/error/service_unavailable.rb
145
+ - lib/tradier/error/too_many_requests.rb
146
+ - lib/tradier/error/unauthorized.rb
147
+ - lib/tradier/error/unprocessable_entity.rb
148
+ - lib/tradier/error.rb
149
+ - lib/tradier/event.rb
150
+ - lib/tradier/history.rb
151
+ - lib/tradier/option_quote.rb
152
+ - lib/tradier/order.rb
153
+ - lib/tradier/position.rb
154
+ - lib/tradier/profile.rb
155
+ - lib/tradier/quote.rb
156
+ - lib/tradier/response/parse_json.rb
157
+ - lib/tradier/response/raise_error.rb
158
+ - lib/tradier/symbol.rb
159
+ - lib/tradier/timesales.rb
160
+ - lib/tradier/version.rb
161
+ - lib/tradier/watchlist.rb
162
+ - lib/tradier/watchlist_item.rb
163
+ - lib/tradier.rb
164
+ - spec/fixtures/account_balances.json
165
+ - spec/fixtures/account_gainloss.json
166
+ - spec/fixtures/account_history.json
167
+ - spec/fixtures/account_orders.json
168
+ - spec/fixtures/account_positions.json
169
+ - spec/fixtures/calendar.json
170
+ - spec/fixtures/chain.json
171
+ - spec/fixtures/clock.json
172
+ - spec/fixtures/expirations.json
173
+ - spec/fixtures/history.json
174
+ - spec/fixtures/option_quote.json
175
+ - spec/fixtures/option_quotes.json
176
+ - spec/fixtures/order.json
177
+ - spec/fixtures/order_with_warnings.json
178
+ - spec/fixtures/placed_order.json
179
+ - spec/fixtures/quote.json
180
+ - spec/fixtures/quotes.json
181
+ - spec/fixtures/session.json
182
+ - spec/fixtures/strikes.json
183
+ - spec/fixtures/timesales.json
184
+ - spec/fixtures/user_balances.json
185
+ - spec/fixtures/user_gainloss.json
186
+ - spec/fixtures/user_history.json
187
+ - spec/fixtures/user_orders.json
188
+ - spec/fixtures/user_positions.json
189
+ - spec/fixtures/user_profile.json
190
+ - spec/fixtures/watchlist.json
191
+ - spec/fixtures/watchlist_item.json
192
+ - spec/fixtures/watchlists.json
193
+ - spec/spec_helper.rb
194
+ - spec/tradier/account_spec.rb
195
+ - spec/tradier/api/accounts_spec.rb
196
+ - spec/tradier/api/markets_spec.rb
197
+ - spec/tradier/api/orders_spec.rb
198
+ - spec/tradier/api/utils/expiration_spec.rb
199
+ - spec/tradier/api/watchlists_spec.rb
200
+ - spec/tradier/balance_spec.rb
201
+ - spec/tradier/base_spec.rb
202
+ - spec/tradier/calendar_spec.rb
203
+ - spec/tradier/client_spec.rb
204
+ - spec/tradier/clock_spec.rb
205
+ - spec/tradier/error/client_error_spec.rb
206
+ - spec/tradier/error/server_error_spec.rb
207
+ - spec/tradier/error_spec.rb
208
+ - spec/tradier/option_quote_spec.rb
209
+ - spec/tradier/order_spec.rb
210
+ - spec/tradier/position_spec.rb
211
+ - spec/tradier/profile_spec.rb
212
+ - spec/tradier/quote_spec.rb
213
+ - spec/tradier/symbol_spec.rb
214
+ - spec/tradier/watchlist_item_spec.rb
215
+ - spec/tradier/watchlist_spec.rb
216
+ - spec/tradier_spec.rb
217
+ homepage: https://github.com/tradier/tradier.rb
218
+ licenses:
219
+ - MIT
220
+ post_install_message:
221
+ rdoc_options: []
222
+ require_paths:
223
+ - lib
224
+ required_ruby_version: !ruby/object:Gem::Requirement
225
+ none: false
226
+ requirements:
227
+ - - ! '>='
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
230
+ segments:
231
+ - 0
232
+ hash: 1473021614660637289
233
+ required_rubygems_version: !ruby/object:Gem::Requirement
234
+ none: false
235
+ requirements:
236
+ - - ! '>='
237
+ - !ruby/object:Gem::Version
238
+ version: '0'
239
+ segments:
240
+ - 0
241
+ hash: 1473021614660637289
242
+ requirements: []
243
+ rubyforge_project:
244
+ rubygems_version: 1.8.23
245
+ signing_key:
246
+ specification_version: 3
247
+ summary: Rubygem for interacting with the Tradier API.
248
+ test_files:
249
+ - spec/fixtures/account_balances.json
250
+ - spec/fixtures/account_gainloss.json
251
+ - spec/fixtures/account_history.json
252
+ - spec/fixtures/account_orders.json
253
+ - spec/fixtures/account_positions.json
254
+ - spec/fixtures/calendar.json
255
+ - spec/fixtures/chain.json
256
+ - spec/fixtures/clock.json
257
+ - spec/fixtures/expirations.json
258
+ - spec/fixtures/history.json
259
+ - spec/fixtures/option_quote.json
260
+ - spec/fixtures/option_quotes.json
261
+ - spec/fixtures/order.json
262
+ - spec/fixtures/order_with_warnings.json
263
+ - spec/fixtures/placed_order.json
264
+ - spec/fixtures/quote.json
265
+ - spec/fixtures/quotes.json
266
+ - spec/fixtures/session.json
267
+ - spec/fixtures/strikes.json
268
+ - spec/fixtures/timesales.json
269
+ - spec/fixtures/user_balances.json
270
+ - spec/fixtures/user_gainloss.json
271
+ - spec/fixtures/user_history.json
272
+ - spec/fixtures/user_orders.json
273
+ - spec/fixtures/user_positions.json
274
+ - spec/fixtures/user_profile.json
275
+ - spec/fixtures/watchlist.json
276
+ - spec/fixtures/watchlist_item.json
277
+ - spec/fixtures/watchlists.json
278
+ - spec/spec_helper.rb
279
+ - spec/tradier/account_spec.rb
280
+ - spec/tradier/api/accounts_spec.rb
281
+ - spec/tradier/api/markets_spec.rb
282
+ - spec/tradier/api/orders_spec.rb
283
+ - spec/tradier/api/utils/expiration_spec.rb
284
+ - spec/tradier/api/watchlists_spec.rb
285
+ - spec/tradier/balance_spec.rb
286
+ - spec/tradier/base_spec.rb
287
+ - spec/tradier/calendar_spec.rb
288
+ - spec/tradier/client_spec.rb
289
+ - spec/tradier/clock_spec.rb
290
+ - spec/tradier/error/client_error_spec.rb
291
+ - spec/tradier/error/server_error_spec.rb
292
+ - spec/tradier/error_spec.rb
293
+ - spec/tradier/option_quote_spec.rb
294
+ - spec/tradier/order_spec.rb
295
+ - spec/tradier/position_spec.rb
296
+ - spec/tradier/profile_spec.rb
297
+ - spec/tradier/quote_spec.rb
298
+ - spec/tradier/symbol_spec.rb
299
+ - spec/tradier/watchlist_item_spec.rb
300
+ - spec/tradier/watchlist_spec.rb
301
+ - spec/tradier_spec.rb
302
+ has_rdoc: