snaptrade 2.0.121 → 2.0.123

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7c6d68c3bef6d28351d54a9f45678a5cfefc9b9391e9ab251e2a1fde13a1932d
4
- data.tar.gz: d6a23c0e07e552ec7a3164b9726b4c9a17519e25adcc6b6cd3fb141ec1ae6c68
3
+ metadata.gz: af2a719406589ce3ae88123bd403a4102432ac9fbf6d8f7ddfba1665c2d21313
4
+ data.tar.gz: a98763c429d28648bb302ad1cc67893b697d887872b1d515c503667ad88d8e70
5
5
  SHA512:
6
- metadata.gz: 70c0c65c30a04eacf60727973d3b3090b28cfac3746b964c9884f64271705e304762d280b7fda101db556548e94a34e8262d17d83a0dc56ea6cc66688f6330b6
7
- data.tar.gz: fd1a0091ab72a9e0ee4955fe64d8ae8cc96edc7a03fa2ffdaddf516cf043a901142980dca741929703522ea7ebdc44f4a3bab494819b630a65df65f8136f895c
6
+ metadata.gz: 128e7f1dbbdcdf568e181816945f7d618e75bb3c07a82cea4eaada86429aefceb427967e6421c900d4f7d2ea2b9feb717d4686d08cbc43f907f726a33928ce19
7
+ data.tar.gz: be498c45d9af927f2d95b16922622b83fadc01aff31ceab6bbbe373c29302ab8a8d357501cee2e3e12822f07c57ded8f08d448a3b91a674060884d63ea3470a1
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- snaptrade (2.0.121)
4
+ snaptrade (2.0.123)
5
5
  faraday (>= 1.0.1, < 3.0)
6
6
  faraday-multipart (~> 1.0, >= 1.0.4)
7
7
 
@@ -42,7 +42,7 @@ GEM
42
42
  racc (1.8.1)
43
43
  rainbow (3.1.1)
44
44
  rake (13.0.6)
45
- regexp_parser (2.11.0)
45
+ regexp_parser (2.11.2)
46
46
  reline (0.6.2)
47
47
  io-console (~> 0.5)
48
48
  rexml (3.4.1)
@@ -58,7 +58,7 @@ GEM
58
58
  rspec-mocks (3.13.5)
59
59
  diff-lcs (>= 1.2.0, < 2.0)
60
60
  rspec-support (~> 3.13.0)
61
- rspec-support (3.13.4)
61
+ rspec-support (3.13.5)
62
62
  rubocop (1.12.1)
63
63
  parallel (~> 1.10)
64
64
  parser (>= 3.0.0.0)
data/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  Connect brokerage accounts to your app for live positions and trading
8
8
 
9
- [![npm](https://img.shields.io/badge/gem-v2.0.121-blue)](https://rubygems.org/gems/snaptrade/versions/2.0.121)
9
+ [![npm](https://img.shields.io/badge/gem-v2.0.123-blue)](https://rubygems.org/gems/snaptrade/versions/2.0.123)
10
10
  [![More Info](https://img.shields.io/badge/More%20Info-Click%20Here-orange)](https://snaptrade.com/)
11
11
 
12
12
  </div>
@@ -83,7 +83,7 @@ Connect brokerage accounts to your app for live positions and trading
83
83
  Add to Gemfile:
84
84
 
85
85
  ```ruby
86
- gem 'snaptrade', '~> 2.0.121'
86
+ gem 'snaptrade', '~> 2.0.123'
87
87
  ```
88
88
 
89
89
  ## Getting Started<a id="getting-started"></a>
@@ -965,7 +965,7 @@ module SnapTrade
965
965
  end
966
966
 
967
967
 
968
- # Place equity order
968
+ # Place order
969
969
  #
970
970
  # Places a brokerage order in the specified account. The order could be rejected by the brokerage if it is invalid or if the account does not have sufficient funds.
971
971
  #
@@ -1004,7 +1004,7 @@ module SnapTrade
1004
1004
  data
1005
1005
  end
1006
1006
 
1007
- # Place equity order
1007
+ # Place order
1008
1008
  #
1009
1009
  # Places a brokerage order in the specified account. The order could be rejected by the brokerage if it is invalid or if the account does not have sufficient funds.
1010
1010
  #
@@ -1042,7 +1042,7 @@ module SnapTrade
1042
1042
  place_force_order_with_http_info_impl(user_id, user_secret, manual_trade_form_with_options, extra)
1043
1043
  end
1044
1044
 
1045
- # Place equity order
1045
+ # Place order
1046
1046
  # Places a brokerage order in the specified account. The order could be rejected by the brokerage if it is invalid or if the account does not have sufficient funds. This endpoint does not compute the impact to the account balance from the order and any potential commissions before submitting the order to the brokerage. If that is desired, you can use the [check order impact endpoint](/reference/Trading/Trading_getOrderImpact). It's recommended to trigger a manual refresh of the account after placing an order to ensure the account is up to date. You can use the [manual refresh](/reference/Connections/Connections_refreshBrokerageAuthorization) endpoint for this.
1047
1047
  # @param user_id [String]
1048
1048
  # @param user_secret [String]
@@ -1054,7 +1054,7 @@ module SnapTrade
1054
1054
  data
1055
1055
  end
1056
1056
 
1057
- # Place equity order
1057
+ # Place order
1058
1058
  # Places a brokerage order in the specified account. The order could be rejected by the brokerage if it is invalid or if the account does not have sufficient funds. This endpoint does not compute the impact to the account balance from the order and any potential commissions before submitting the order to the brokerage. If that is desired, you can use the [check order impact endpoint](/reference/Trading/Trading_getOrderImpact). It&#39;s recommended to trigger a manual refresh of the account after placing an order to ensure the account is up to date. You can use the [manual refresh](/reference/Connections/Connections_refreshBrokerageAuthorization) endpoint for this.
1059
1059
  # @param user_id [String]
1060
1060
  # @param user_secret [String]
@@ -1549,7 +1549,7 @@ module SnapTrade
1549
1549
  end
1550
1550
 
1551
1551
 
1552
- # Replace equity order
1552
+ # Replace order
1553
1553
  #
1554
1554
  # Replaces an existing pending order with a new one. The way this works is brokerage dependent, but usually involves cancelling
1555
1555
  # the existing order and placing a new one. The order's brokerage_order_id may or may not change, be sure to use the one
@@ -1583,7 +1583,7 @@ module SnapTrade
1583
1583
  data
1584
1584
  end
1585
1585
 
1586
- # Replace equity order
1586
+ # Replace order
1587
1587
  #
1588
1588
  # Replaces an existing pending order with a new one. The way this works is brokerage dependent, but usually involves cancelling
1589
1589
  # the existing order and placing a new one. The order's brokerage_order_id may or may not change, be sure to use the one
@@ -1616,7 +1616,7 @@ module SnapTrade
1616
1616
  replace_order_with_http_info_impl(account_id, user_id, user_secret, manual_trade_replace_form, extra)
1617
1617
  end
1618
1618
 
1619
- # Replace equity order
1619
+ # Replace order
1620
1620
  # Replaces an existing pending order with a new one. The way this works is brokerage dependent, but usually involves cancelling the existing order and placing a new one. The order's brokerage_order_id may or may not change, be sure to use the one returned in the response going forward. Only supported on some brokerages
1621
1621
  # @param account_id [String] The ID of the account to execute the trade on.
1622
1622
  # @param user_id [String]
@@ -1629,7 +1629,7 @@ module SnapTrade
1629
1629
  data
1630
1630
  end
1631
1631
 
1632
- # Replace equity order
1632
+ # Replace order
1633
1633
  # Replaces an existing pending order with a new one. The way this works is brokerage dependent, but usually involves cancelling the existing order and placing a new one. The order&#39;s brokerage_order_id may or may not change, be sure to use the one returned in the response going forward. Only supported on some brokerages
1634
1634
  # @param account_id [String] The ID of the account to execute the trade on.
1635
1635
  # @param user_id [String]
@@ -30,6 +30,8 @@ module SnapTrade
30
30
  # Deprecated, use the `units` field for both fractional and integer units going forward
31
31
  attr_accessor :fractional_units
32
32
 
33
+ attr_accessor :currency
34
+
33
35
  # Attribute mapping from ruby-style variable name to JSON key.
34
36
  def self.attribute_map
35
37
  {
@@ -38,7 +40,8 @@ module SnapTrade
38
40
  :'price' => :'price',
39
41
  :'open_pnl' => :'open_pnl',
40
42
  :'average_purchase_price' => :'average_purchase_price',
41
- :'fractional_units' => :'fractional_units'
43
+ :'fractional_units' => :'fractional_units',
44
+ :'currency' => :'currency'
42
45
  }
43
46
  end
44
47
 
@@ -55,7 +58,8 @@ module SnapTrade
55
58
  :'price' => :'Float',
56
59
  :'open_pnl' => :'Float',
57
60
  :'average_purchase_price' => :'Float',
58
- :'fractional_units' => :'Float'
61
+ :'fractional_units' => :'Float',
62
+ :'currency' => :'PositionCurrency'
59
63
  }
60
64
  end
61
65
 
@@ -66,7 +70,7 @@ module SnapTrade
66
70
  :'price',
67
71
  :'open_pnl',
68
72
  :'average_purchase_price',
69
- :'fractional_units'
73
+ :'fractional_units',
70
74
  ])
71
75
  end
72
76
 
@@ -108,6 +112,10 @@ module SnapTrade
108
112
  if attributes.key?(:'fractional_units')
109
113
  self.fractional_units = attributes[:'fractional_units']
110
114
  end
115
+
116
+ if attributes.key?(:'currency')
117
+ self.currency = attributes[:'currency']
118
+ end
111
119
  end
112
120
 
113
121
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -133,7 +141,8 @@ module SnapTrade
133
141
  price == o.price &&
134
142
  open_pnl == o.open_pnl &&
135
143
  average_purchase_price == o.average_purchase_price &&
136
- fractional_units == o.fractional_units
144
+ fractional_units == o.fractional_units &&
145
+ currency == o.currency
137
146
  end
138
147
 
139
148
  # @see the `==` method
@@ -145,7 +154,7 @@ module SnapTrade
145
154
  # Calculates hash code according to all attributes.
146
155
  # @return [Integer] Hash code
147
156
  def hash
148
- [symbol, units, price, open_pnl, average_purchase_price, fractional_units].hash
157
+ [symbol, units, price, open_pnl, average_purchase_price, fractional_units, currency].hash
149
158
  end
150
159
 
151
160
  # Builds the object from hash
@@ -0,0 +1,245 @@
1
+ =begin
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
+ =end
9
+
10
+ require 'date'
11
+ require 'time'
12
+
13
+ module SnapTrade
14
+ # The 'position currency' (`price` and `average_purchase_price`). This currency can potentially be different from the 'listing currency' of the security. The 'listing currency' is what's quoted on the listing exchange, while the 'position currency' is what the brokerage uses to hold and value your position.
15
+ class PositionCurrency
16
+ # Unique identifier for the currency. This is the UUID used to reference the currency in SnapTrade.
17
+ attr_accessor :id
18
+
19
+ # The ISO-4217 currency code for the currency.
20
+ attr_accessor :code
21
+
22
+ # A human-friendly name of the currency.
23
+ attr_accessor :name
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'id' => :'id',
29
+ :'code' => :'code',
30
+ :'name' => :'name'
31
+ }
32
+ end
33
+
34
+ # Returns all the JSON keys this model knows about
35
+ def self.acceptable_attributes
36
+ attribute_map.values
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.openapi_types
41
+ {
42
+ :'id' => :'String',
43
+ :'code' => :'String',
44
+ :'name' => :'String'
45
+ }
46
+ end
47
+
48
+ # List of attributes with nullable: true
49
+ def self.openapi_nullable
50
+ Set.new([
51
+ ])
52
+ end
53
+
54
+ # List of class defined in allOf (OpenAPI v3)
55
+ def self.openapi_all_of
56
+ [
57
+ :'Currency'
58
+ ]
59
+ end
60
+
61
+ # Initializes the object
62
+ # @param [Hash] attributes Model attributes in the form of hash
63
+ def initialize(attributes = {})
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `SnapTrade::PositionCurrency` initialize method"
66
+ end
67
+
68
+ # check to see if the attribute exists and convert string to symbol for hash key
69
+ attributes = attributes.each_with_object({}) { |(k, v), h|
70
+ if (!self.class.attribute_map.key?(k.to_sym))
71
+ fail ArgumentError, "`#{k}` is not a valid attribute in `SnapTrade::PositionCurrency`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
72
+ end
73
+ h[k.to_sym] = v
74
+ }
75
+
76
+ if attributes.key?(:'id')
77
+ self.id = attributes[:'id']
78
+ end
79
+
80
+ if attributes.key?(:'code')
81
+ self.code = attributes[:'code']
82
+ end
83
+
84
+ if attributes.key?(:'name')
85
+ self.name = attributes[:'name']
86
+ end
87
+ end
88
+
89
+ # Show invalid properties with the reasons. Usually used together with valid?
90
+ # @return Array for valid properties with the reasons
91
+ def list_invalid_properties
92
+ invalid_properties = Array.new
93
+ invalid_properties
94
+ end
95
+
96
+ # Check to see if the all the properties in the model are valid
97
+ # @return true if the model is valid
98
+ def valid?
99
+ true
100
+ end
101
+
102
+ # Checks equality by comparing each attribute.
103
+ # @param [Object] Object to be compared
104
+ def ==(o)
105
+ return true if self.equal?(o)
106
+ self.class == o.class &&
107
+ id == o.id &&
108
+ code == o.code &&
109
+ name == o.name
110
+ end
111
+
112
+ # @see the `==` method
113
+ # @param [Object] Object to be compared
114
+ def eql?(o)
115
+ self == o
116
+ end
117
+
118
+ # Calculates hash code according to all attributes.
119
+ # @return [Integer] Hash code
120
+ def hash
121
+ [id, code, name].hash
122
+ end
123
+
124
+ # Builds the object from hash
125
+ # @param [Hash] attributes Model attributes in the form of hash
126
+ # @return [Object] Returns the model itself
127
+ def self.build_from_hash(attributes)
128
+ new.build_from_hash(attributes)
129
+ end
130
+
131
+ # Builds the object from hash
132
+ # @param [Hash] attributes Model attributes in the form of hash
133
+ # @return [Object] Returns the model itself
134
+ def build_from_hash(attributes)
135
+ return nil unless attributes.is_a?(Hash)
136
+ attributes = attributes.transform_keys(&:to_sym)
137
+ self.class.openapi_types.each_pair do |key, type|
138
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
139
+ self.send("#{key}=", nil)
140
+ elsif type =~ /\AArray<(.*)>/i
141
+ # check to ensure the input is an array given that the attribute
142
+ # is documented as an array but the input is not
143
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
144
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
145
+ end
146
+ elsif !attributes[self.class.attribute_map[key]].nil?
147
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
148
+ end
149
+ end
150
+
151
+ self
152
+ end
153
+
154
+ # Deserializes the data based on type
155
+ # @param string type Data type
156
+ # @param string value Value to be deserialized
157
+ # @return [Object] Deserialized data
158
+ def _deserialize(type, value)
159
+ case type.to_sym
160
+ when :Time
161
+ Time.parse(value)
162
+ when :Date
163
+ Date.parse(value)
164
+ when :String
165
+ value.to_s
166
+ when :Integer
167
+ value.to_i
168
+ when :Float
169
+ value.to_f
170
+ when :Boolean
171
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
172
+ true
173
+ else
174
+ false
175
+ end
176
+ when :Object
177
+ # generic object (usually a Hash), return directly
178
+ value
179
+ when /\AArray<(?<inner_type>.+)>\z/
180
+ inner_type = Regexp.last_match[:inner_type]
181
+ value.map { |v| _deserialize(inner_type, v) }
182
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
183
+ k_type = Regexp.last_match[:k_type]
184
+ v_type = Regexp.last_match[:v_type]
185
+ {}.tap do |hash|
186
+ value.each do |k, v|
187
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
188
+ end
189
+ end
190
+ else # model
191
+ # models (e.g. Pet) or oneOf
192
+ klass = SnapTrade.const_get(type)
193
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
194
+ end
195
+ end
196
+
197
+ # Returns the string representation of the object
198
+ # @return [String] String presentation of the object
199
+ def to_s
200
+ to_hash.to_s
201
+ end
202
+
203
+ # to_body is an alias to to_hash (backward compatibility)
204
+ # @return [Hash] Returns the object in the form of hash
205
+ def to_body
206
+ to_hash
207
+ end
208
+
209
+ # Returns the object in the form of hash
210
+ # @return [Hash] Returns the object in the form of hash
211
+ def to_hash
212
+ hash = {}
213
+ self.class.attribute_map.each_pair do |attr, param|
214
+ value = self.send(attr)
215
+ if value.nil?
216
+ is_nullable = self.class.openapi_nullable.include?(attr)
217
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
218
+ end
219
+
220
+ hash[param] = _to_hash(value)
221
+ end
222
+ hash
223
+ end
224
+
225
+ # Outputs non-array value in the form of hash
226
+ # For object, use to_hash. Otherwise, just return the value
227
+ # @param [Object] value Any valid value
228
+ # @return [Hash] Returns the value in the form of hash
229
+ def _to_hash(value)
230
+ if value.is_a?(Array)
231
+ value.compact.map { |v| _to_hash(v) }
232
+ elsif value.is_a?(Hash)
233
+ {}.tap do |hash|
234
+ value.each { |k, v| hash[k] = _to_hash(v) }
235
+ end
236
+ elsif value.respond_to? :to_hash
237
+ value.to_hash
238
+ else
239
+ value
240
+ end
241
+ end
242
+
243
+ end
244
+
245
+ end
@@ -8,5 +8,5 @@ Contact: api@snaptrade.com
8
8
  =end
9
9
 
10
10
  module SnapTrade
11
- VERSION = '2.0.121'
11
+ VERSION = '2.0.123'
12
12
  end
data/lib/snaptrade.rb CHANGED
@@ -127,6 +127,7 @@ require 'snaptrade/models/partner_data'
127
127
  require 'snaptrade/models/past_value'
128
128
  require 'snaptrade/models/performance_custom'
129
129
  require 'snaptrade/models/position'
130
+ require 'snaptrade/models/position_currency'
130
131
  require 'snaptrade/models/position_symbol'
131
132
  require 'snaptrade/models/rate_of_return_object'
132
133
  require 'snaptrade/models/rate_of_return_response'
@@ -133,7 +133,7 @@ describe 'TradingApi' do
133
133
  end
134
134
 
135
135
  # unit tests for place_force_order
136
- # Place equity order
136
+ # Place order
137
137
  # Places a brokerage order in the specified account. The order could be rejected by the brokerage if it is invalid or if the account does not have sufficient funds. This endpoint does not compute the impact to the account balance from the order and any potential commissions before submitting the order to the brokerage. If that is desired, you can use the [check order impact endpoint](/reference/Trading/Trading_getOrderImpact). It&#39;s recommended to trigger a manual refresh of the account after placing an order to ensure the account is up to date. You can use the [manual refresh](/reference/Connections/Connections_refreshBrokerageAuthorization) endpoint for this.
138
138
  # @param user_id
139
139
  # @param user_secret
@@ -192,7 +192,7 @@ describe 'TradingApi' do
192
192
  end
193
193
 
194
194
  # unit tests for replace_order
195
- # Replace equity order
195
+ # Replace order
196
196
  # Replaces an existing pending order with a new one. The way this works is brokerage dependent, but usually involves cancelling the existing order and placing a new one. The order&#39;s brokerage_order_id may or may not change, be sure to use the one returned in the response going forward. Only supported on some brokerages
197
197
  # @param account_id The ID of the account to execute the trade on.
198
198
  # @param user_id
@@ -0,0 +1,41 @@
1
+ =begin
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
+ =end
9
+
10
+ require 'spec_helper'
11
+ require 'json'
12
+ require 'date'
13
+
14
+ # Unit tests for SnapTrade::PositionCurrency
15
+ describe SnapTrade::PositionCurrency do
16
+ let(:instance) { SnapTrade::PositionCurrency.new }
17
+
18
+ describe 'test an instance of PositionCurrency' do
19
+ it 'should create an instance of PositionCurrency' do
20
+ expect(instance).to be_instance_of(SnapTrade::PositionCurrency)
21
+ end
22
+ end
23
+ describe 'test attribute "id"' do
24
+ it 'should work' do
25
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
26
+ end
27
+ end
28
+
29
+ describe 'test attribute "code"' do
30
+ it 'should work' do
31
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
32
+ end
33
+ end
34
+
35
+ describe 'test attribute "name"' do
36
+ it 'should work' do
37
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
38
+ end
39
+ end
40
+
41
+ end
@@ -56,4 +56,10 @@ describe SnapTrade::Position do
56
56
  end
57
57
  end
58
58
 
59
+ describe 'test attribute "currency"' do
60
+ it 'should work' do
61
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
62
+ end
63
+ end
64
+
59
65
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: snaptrade
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.121
4
+ version: 2.0.123
5
5
  platform: ruby
6
6
  authors:
7
7
  - SnapTrade
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-08-08 00:00:00.000000000 Z
11
+ date: 2025-08-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -206,6 +206,7 @@ files:
206
206
  - lib/snaptrade/models/past_value.rb
207
207
  - lib/snaptrade/models/performance_custom.rb
208
208
  - lib/snaptrade/models/position.rb
209
+ - lib/snaptrade/models/position_currency.rb
209
210
  - lib/snaptrade/models/position_symbol.rb
210
211
  - lib/snaptrade/models/rate_of_return_object.rb
211
212
  - lib/snaptrade/models/rate_of_return_response.rb
@@ -374,6 +375,7 @@ files:
374
375
  - spec/models/partner_data_spec.rb
375
376
  - spec/models/past_value_spec.rb
376
377
  - spec/models/performance_custom_spec.rb
378
+ - spec/models/position_currency_spec.rb
377
379
  - spec/models/position_spec.rb
378
380
  - spec/models/position_symbol_spec.rb
379
381
  - spec/models/rate_of_return_object_spec.rb
@@ -565,6 +567,7 @@ test_files:
565
567
  - spec/models/symbol_query_spec.rb
566
568
  - spec/models/order_type_strict_spec.rb
567
569
  - spec/models/universal_activity_spec.rb
570
+ - spec/models/position_currency_spec.rb
568
571
  - spec/models/mleg_trading_instrument_spec.rb
569
572
  - spec/models/timeframe_spec.rb
570
573
  - spec/models/cancel_order_response_spec.rb