primary-api-models 0.4.5__tar.gz → 0.4.7__tar.gz
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.
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/PKG-INFO +1 -1
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/__init__.py +2 -1
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/commons.py +4 -4
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/detailed_position.py +2 -2
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/enums.py +18 -9
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/instrument_details.py +3 -3
- primary_api_models-0.4.7/primary_api_models/market_data.py +33 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models.egg-info/PKG-INFO +1 -1
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/pyproject.toml +1 -1
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/tests/test_models.py +20 -9
- primary_api_models-0.4.5/primary_api_models/market_data.py +0 -32
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/README.md +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/account_report.py +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/detailed_instruments.py +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/enhanced_models.py +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/instruments.py +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/order.py +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/order_report.py +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/order_status.py +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/positions.py +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/segments.py +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models.egg-info/SOURCES.txt +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models.egg-info/dependency_links.txt +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models.egg-info/requires.txt +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models.egg-info/top_level.txt +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/setup.cfg +0 -0
- {primary_api_models-0.4.5 → primary_api_models-0.4.7}/tests/test_model_dump.py +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# Export all modules from the current directory
|
|
2
|
-
from primary_api_models.enums import StatusResponse, MessageType, MarketId, Side, OrderType, OrderStatus, TimeInForce, Currency, CurrencyIndex, SettlementIndex, MarketDataEntry, CFICode, MarketSegment, ContractType
|
|
2
|
+
from primary_api_models.enums import StatusResponse, MessageType, MarketId, Side, OrderType, OrderStatus, TimeInForce, Currency, CurrencyIndex, SettlType, SettlementIndex, MarketDataEntry, CFICode, MarketSegment, ContractType
|
|
3
3
|
from primary_api_models.account_report import AccountReportResponse, AccountData
|
|
4
4
|
from primary_api_models.commons import CommonResponse, PriceSize, PriceSizeDate, InstrumentId, Instrument
|
|
5
5
|
from primary_api_models.detailed_instruments import DetailedInstrumentsResponse
|
|
@@ -26,6 +26,7 @@ __all__ = [
|
|
|
26
26
|
"TimeInForce",
|
|
27
27
|
"Currency",
|
|
28
28
|
"CurrencyIndex",
|
|
29
|
+
"SettlType",
|
|
29
30
|
"SettlementIndex",
|
|
30
31
|
"MarketDataEntry",
|
|
31
32
|
"CFICode",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from pydantic import BaseModel, ConfigDict
|
|
2
2
|
from pydantic.alias_generators import to_camel
|
|
3
|
-
from typing import Optional
|
|
3
|
+
from typing import Optional, Union
|
|
4
4
|
from decimal import Decimal
|
|
5
5
|
from primary_api_models.enums import CFICode, MessageType, MarketId, MarketSegment, StatusResponse, SettlementIndex
|
|
6
6
|
|
|
@@ -25,7 +25,7 @@ class CommonResponse(PrimaryBaseModel):
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
class Segment(PrimaryBaseModel):
|
|
28
|
-
market_segment_id: MarketSegment
|
|
28
|
+
market_segment_id: Union[MarketSegment, str]
|
|
29
29
|
market_id: MarketId
|
|
30
30
|
|
|
31
31
|
|
|
@@ -35,7 +35,7 @@ class AccountId(PrimaryBaseModel):
|
|
|
35
35
|
|
|
36
36
|
class Instrument(PrimaryBaseModel):
|
|
37
37
|
symbol_reference: str
|
|
38
|
-
settl_type: SettlementIndex
|
|
38
|
+
settl_type: Union[SettlementIndex, int]
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
class InstrumentId(PrimaryBaseModel):
|
|
@@ -45,7 +45,7 @@ class InstrumentId(PrimaryBaseModel):
|
|
|
45
45
|
|
|
46
46
|
class ListedInstrument(PrimaryBaseModel):
|
|
47
47
|
instrument_id: InstrumentId
|
|
48
|
-
cficode: CFICode
|
|
48
|
+
cficode: Union[CFICode, str]
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
class PriceSize(PrimaryBaseModel):
|
{primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/detailed_position.py
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from typing import List, Dict, Optional
|
|
1
|
+
from typing import List, Dict, Optional, Union
|
|
2
2
|
from decimal import Decimal
|
|
3
3
|
from primary_api_models.commons import CommonResponse, PrimaryBaseModel
|
|
4
4
|
from primary_api_models.enums import ContractType
|
|
@@ -30,7 +30,7 @@ class DetailedPosition(PrimaryBaseModel):
|
|
|
30
30
|
market_value: Optional[Decimal] = None
|
|
31
31
|
market_price: Optional[Decimal] = None
|
|
32
32
|
trading_symbol: Optional[str] = None
|
|
33
|
-
settl_type: Optional[SettlementIndex] = None
|
|
33
|
+
settl_type: Optional[Union[SettlementIndex, int]] = None
|
|
34
34
|
settlement_date: Optional[int] = None
|
|
35
35
|
|
|
36
36
|
|
|
@@ -98,7 +98,7 @@ class SettlementIndex(int, Enum):
|
|
|
98
98
|
T5 = 5 # 120hs
|
|
99
99
|
|
|
100
100
|
|
|
101
|
-
class MarketDataEntry(Enum):
|
|
101
|
+
class MarketDataEntry(str,Enum):
|
|
102
102
|
"""Identifies market data entries for an instrument.
|
|
103
103
|
BIDS: Best buy offer in the Market Book.
|
|
104
104
|
OFFERS: Best sell offer in the Market Book.
|
|
@@ -132,7 +132,7 @@ class MarketDataEntry(Enum):
|
|
|
132
132
|
TRADE_COUNT = "TC"
|
|
133
133
|
|
|
134
134
|
|
|
135
|
-
class CFICode(Enum):
|
|
135
|
+
class CFICode(str, Enum):
|
|
136
136
|
"""Identifies the type of instrument.
|
|
137
137
|
EMXXXX: CEDEAR
|
|
138
138
|
ESXXXX: Stock (Accion)
|
|
@@ -175,27 +175,36 @@ class CFICode(Enum):
|
|
|
175
175
|
DXXXXX = "DXXXXX"
|
|
176
176
|
|
|
177
177
|
|
|
178
|
-
class MarketSegment(Enum):
|
|
178
|
+
class MarketSegment(str, Enum):
|
|
179
179
|
"""Identifies the Market Segment associated to the instruments.
|
|
180
180
|
DDF: División Derivados Financieros.
|
|
181
181
|
DDA: División Derivados Agropecuarios.
|
|
182
182
|
DUAL: Instruments on DDF and DDA.
|
|
183
|
-
U-DDF:
|
|
184
|
-
U-DDA:
|
|
185
|
-
U-DUAL:
|
|
186
183
|
MERV: Matba Rofex External Markets. MERVAL
|
|
187
184
|
MAE: Mercado Abierto Electrónico
|
|
185
|
+
MFCI: Mercado Fondos Comunes de Inversión
|
|
186
|
+
Otros: Historicos de remarkets en entorno de test
|
|
188
187
|
"""
|
|
188
|
+
MERV = "MERV"
|
|
189
|
+
MFCI = "MFCI"
|
|
189
190
|
DDF = "DDF"
|
|
190
191
|
DDA = "DDA"
|
|
191
192
|
DUAL = "DUAL"
|
|
193
|
+
MAE = "MAE"
|
|
194
|
+
MATBA = "MATBA"
|
|
195
|
+
TIVA = "TIVA"
|
|
192
196
|
U_DDF = "U-DDF"
|
|
193
197
|
U_DDA = "U-DDA"
|
|
194
198
|
U_DUAL = "U-DUAL"
|
|
195
|
-
|
|
196
|
-
|
|
199
|
+
U_DDF_S = "U-DDF-S"
|
|
200
|
+
U_FIN = "U-FIN"
|
|
201
|
+
U_COMM = "U-COMM"
|
|
202
|
+
U_STOCK = "U-STOCK"
|
|
203
|
+
MVR = "MVR"
|
|
204
|
+
MVC = "MVC"
|
|
205
|
+
MVM = "MVM"
|
|
206
|
+
AVS = "AVS"
|
|
197
207
|
TEST = "TEST"
|
|
198
|
-
MAE = "MAE"
|
|
199
208
|
|
|
200
209
|
|
|
201
210
|
class ContractType(str, Enum):
|
{primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/instrument_details.py
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
from typing import Optional, List, Dict
|
|
1
|
+
from typing import Optional, List, Dict, Union
|
|
2
2
|
from decimal import Decimal
|
|
3
3
|
from primary_api_models.commons import CommonResponse, Segment, InstrumentId, PrimaryBaseModel
|
|
4
|
-
from primary_api_models.enums import Currency, OrderType, TimeInForce, CFICode
|
|
4
|
+
from primary_api_models.enums import Currency, OrderType, SettlType, TimeInForce, CFICode
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
class TickPriceRange(PrimaryBaseModel):
|
|
@@ -27,7 +27,7 @@ class InstrumentDetails(PrimaryBaseModel):
|
|
|
27
27
|
order_types: List[OrderType]
|
|
28
28
|
times_in_force: List[TimeInForce]
|
|
29
29
|
security_type: Optional[str]
|
|
30
|
-
settl_type: Optional[str]
|
|
30
|
+
settl_type: Optional[Union[SettlType, str]]
|
|
31
31
|
instrument_price_precision: int
|
|
32
32
|
instrument_size_precision: int
|
|
33
33
|
security_id: Optional[str]
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
from typing import Any, List, Optional
|
|
2
|
+
from decimal import Decimal
|
|
3
|
+
from pydantic import BaseModel
|
|
4
|
+
from primary_api_models.commons import CommonResponse, MessageBase, PriceSize, PriceSizeDate, InstrumentId
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class MarketData(BaseModel):
|
|
8
|
+
BI: Optional[List[PriceSize]] = None
|
|
9
|
+
OF: Optional[List[PriceSize]] = None
|
|
10
|
+
LA: Optional[PriceSizeDate] = None
|
|
11
|
+
OP: Optional[Decimal] = None
|
|
12
|
+
CL: Optional[PriceSizeDate] = None
|
|
13
|
+
HI: Optional[Decimal] = None
|
|
14
|
+
LO: Optional[Decimal] = None
|
|
15
|
+
SE: Optional[PriceSizeDate] = None
|
|
16
|
+
TV: Optional[Any] = None
|
|
17
|
+
OI: Optional[Any] = None
|
|
18
|
+
IV: Optional[Any] = None
|
|
19
|
+
EV: Optional[Any] = None
|
|
20
|
+
NV: Optional[Any] = None
|
|
21
|
+
ACP: Optional[Any] = None
|
|
22
|
+
TC: Optional[Any] = None
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class MarketDataResponse(CommonResponse):
|
|
26
|
+
"""For REST API response"""
|
|
27
|
+
market_data: MarketData
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class MarketDataMessage(MessageBase):
|
|
31
|
+
"""For Websocket messages"""
|
|
32
|
+
instrument_id: InstrumentId
|
|
33
|
+
market_data: MarketData
|
|
@@ -1,18 +1,28 @@
|
|
|
1
1
|
from decimal import Decimal
|
|
2
2
|
from primary_api_models.enums import CurrencyIndex, MarketId, MarketSegment, SettlementIndex
|
|
3
|
-
from primary_api_models import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
from primary_api_models import (
|
|
4
|
+
SegmentsResponse,
|
|
5
|
+
AccountReportResponse,
|
|
6
|
+
InstrumentDetailsResponse,
|
|
7
|
+
DetailedPositionsResponse,
|
|
8
|
+
PositionsResponse
|
|
9
|
+
)
|
|
7
10
|
from primary_api_models.commons import InstrumentId, Segment
|
|
8
11
|
|
|
9
12
|
|
|
13
|
+
def test_segments_response():
|
|
14
|
+
json_data = '{"status": "OK", "segments": [{"marketSegmentId": "DDA", "marketId": "ROFX"}, {"marketSegmentId": "DDF", "marketId": "ROFX"}, {"marketSegmentId": "DUAL", "marketId": "ROFX"}, {"marketSegmentId": "TEST", "marketId": "ROFX"}, {"marketSegmentId": "MAE", "marketId": "ROFX"}, {"marketSegmentId": "MERV", "marketId": "ROFX"}, {"marketSegmentId": "MVR", "marketId": "ROFX"}, {"marketSegmentId": "MVC", "marketId": "ROFX"}, {"marketSegmentId": "MATBA", "marketId": "ROFX"}, {"marketSegmentId": "MVM", "marketId": "ROFX"}, {"marketSegmentId": "U-DDA", "marketId": "ROFX"}, {"marketSegmentId": "U-DDF", "marketId": "ROFX"}, {"marketSegmentId": "U-DUAL", "marketId": "ROFX"}, {"marketSegmentId": "U-DDF-S", "marketId": "ROFX"}, {"marketSegmentId": "U-FIN", "marketId": "ROFX"}, {"marketSegmentId": "U-COMM", "marketId": "ROFX"}, {"marketSegmentId": "U-STOCK", "marketId": "ROFX"}, {"marketSegmentId": "TIVA", "marketId": "ROFX"}, {"marketSegmentId": "AVS", "marketId": "ROFX"}]}'
|
|
15
|
+
response = SegmentsResponse.model_validate_json(json_data)
|
|
16
|
+
assert response.status == "OK"
|
|
17
|
+
assert len(response.segments) > 0
|
|
18
|
+
|
|
19
|
+
|
|
10
20
|
def test_account_data_response():
|
|
11
|
-
json_data = '{"status":"OK","accountData":{"accountName":"
|
|
21
|
+
json_data = '{"status":"OK","accountData":{"accountName":"10825","marketMember":"bull","marketMemberIdentity":"bull","collateral":0,"margin":0,"availableToCollateral":4881464.48,"detailedAccountReports":{"0":{"currencyBalance":{"detailedCurrencyBalance":{"USD MtR":{"consumed":0,"available":0},"ARS":{"consumed":0,"available":84142.15},"USD UY":{"consumed":0,"available":0},"USD DB":{"consumed":0,"available":0},"U$S":{"consumed":0,"available":0},"USD G":{"consumed":0,"available":0},"USD R":{"consumed":0,"available":0},"USD C":{"consumed":0,"available":0},"USD D":{"consumed":0,"available":3.42}}},"availableToOperate":{"cash":{"totalCash":88139.48,"detailedCash":{"USD MtR":0,"ARS":84142.15,"USD UY":0,"USD DB":0,"U$S":0,"USD G":0,"USD R":0,"USD C":0,"USD D":3.42}},"movements":0,"credit":null,"total":88139.48,"pendingMovements":0},"settlementDate":1745204400000}},"hasError":false,"errorDetail":null,"lastCalculation":1745266135887,"portfolio":4793325,"ordersMargin":0,"currentCash":88139.48,"dailyDiff":0,"uncoveredMargin":0,"repurchaseMarginARS":null,"repurchaseMarginUSD":null,"accountDescription":null,"detailedCollateral":null,"detailedPortfolio":null,"detailedAvailableToCollateral":null,"personName":null}}'
|
|
12
22
|
response = AccountReportResponse.model_validate_json(json_data)
|
|
13
23
|
assert response.status == "OK"
|
|
14
|
-
assert response.account_data.account_name == "
|
|
15
|
-
assert response.account_data.market_member == "
|
|
24
|
+
assert response.account_data.account_name == "10825"
|
|
25
|
+
assert response.account_data.market_member == "bull"
|
|
16
26
|
assert response.account_data.available_to_collateral == Decimal("4881464.48")
|
|
17
27
|
for key, value in response.account_data.detailed_account_reports.items():
|
|
18
28
|
assert key == SettlementIndex.T0
|
|
@@ -25,6 +35,7 @@ def test_intrument_details_response():
|
|
|
25
35
|
json_data = '{"status":"OK","instrument":{"symbol":null,"segment":{"marketSegmentId":"MERV","marketId":"ROFX"},"lowLimitPrice":0,"highLimitPrice":1000000,"minPriceIncrement":0.05,"minTradeVol":700,"maxTradeVol":1000000,"tickSize":1,"contractMultiplier":1,"roundLot":1,"priceConvertionFactor":1,"maturityDate":null,"currency":"ARS","orderTypes":["MARKET","LIMIT","STOP_LIMIT_MERVAL"],"timesInForce":["DAY","FOK"],"securityType":null,"settlType":null,"instrumentPricePrecision":2,"instrumentSizePrecision":0,"securityId":null,"securityIdSource":null,"securityDescription":"MERV - XMEV - GCDI - 24hs","tickPriceRanges":{"0":{"lowerLimit":0,"upperLimit":null,"tick":0.05}},"strike":null,"underlying":"GCDI S.A.","cficode":"ESXXXX","instrumentId":{"marketId":"ROFX","symbol":"MERV - XMEV - GCDI - 24hs"}}}'
|
|
26
36
|
response = InstrumentDetailsResponse.model_validate_json(json_data)
|
|
27
37
|
assert response.status == "OK"
|
|
38
|
+
print(response.instrument.segment.market_segment_id)
|
|
28
39
|
assert response.instrument.segment == Segment(market_segment_id=MarketSegment.MERV, market_id=MarketId.ROFX)
|
|
29
40
|
assert response.instrument.segment.market_segment_id == MarketSegment.MERV
|
|
30
41
|
assert response.instrument.segment.market_id == MarketId.ROFX
|
|
@@ -33,10 +44,10 @@ def test_intrument_details_response():
|
|
|
33
44
|
|
|
34
45
|
|
|
35
46
|
def test_detailed_position_response():
|
|
36
|
-
json_data = '{ "status": "OK", "detailedPosition": { "account": "10783", "totalMarketValue": 14725200.0, "report": { "CEDEAR": { "NFLX": { "detailedPositions": [ { "symbolReference": "NFLX", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 23300.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 30.0, "buyInitialSize": 30.0, "sellInitialSize": 0.0, "buyInitialPrice": 23575.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 30.0, "buyCurrentSize": 30.0, "sellCurrentSize": 0.0, "marketValue": 699000.0, "tradingSymbol": "MERV - XMEV - NFLX - CI" } ], "instrumentMarketValue": 699000.0, "instrumentInitialSize": 30.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 30.0 }, "GOOGL": { "detailedPositions": [ { "symbolReference": "GOOGL", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 2885.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 120.0, "buyInitialSize": 120.0, "sellInitialSize": 0.0, "buyInitialPrice": 3105.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 120.0, "buyCurrentSize": 120.0, "sellCurrentSize": 0.0, "marketValue": 346200.0, "tradingSymbol": "MERV - XMEV - GOOGL - CI" } ], "instrumentMarketValue": 346200.0, "instrumentInitialSize": 120.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 120.0 }, "META": { "detailedPositions": [ { "symbolReference": "META", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 22925.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 13.0, "buyInitialSize": 13.0, "sellInitialSize": 0.0, "buyInitialPrice": 24650.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 13.0, "buyCurrentSize": 13.0, "sellCurrentSize": 0.0, "marketValue": 298025.0, "tradingSymbol": "MERV - XMEV - META - CI" } ], "instrumentMarketValue": 298025.0, "instrumentInitialSize": 13.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 13.0 }, "NVDA": { "detailedPositions": [ { "symbolReference": "NVDA", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 4585.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 300.0, "buyInitialSize": 300.0, "sellInitialSize": 0.0, "buyInitialPrice": 5090.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 300.0, "buyCurrentSize": 300.0, "sellCurrentSize": 0.0, "marketValue": 1375500.0, "tradingSymbol": "MERV - XMEV - NVDA - CI" } ], "instrumentMarketValue": 1375500.0, "instrumentInitialSize": 300.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 300.0 }, "AAPL": { "detailedPositions": [ { "symbolReference": "AAPL", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 10875.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 80.0, "buyInitialSize": 80.0, "sellInitialSize": 0.0, "buyInitialPrice": 11450.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 80.0, "buyCurrentSize": 80.0, "sellCurrentSize": 0.0, "marketValue": 870000.0, "tradingSymbol": "MERV - XMEV - AAPL - CI" } ], "instrumentMarketValue": 870000.0, "instrumentInitialSize": 80.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 80.0 }, "IBIT": { "detailedPositions": [ { "symbolReference": "IBIT", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 5660.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 100.0, "buyInitialSize": 100.0, "sellInitialSize": 0.0, "buyInitialPrice": 5630.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 100.0, "buyCurrentSize": 100.0, "sellCurrentSize": 0.0, "marketValue": 566000.0, "tradingSymbol": "MERV - XMEV - IBIT - CI" } ], "instrumentMarketValue": 566000.0, "instrumentInitialSize": 100.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 100.0 }, "EWZ": { "detailedPositions": [ { "symbolReference": "EWZ", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 14200.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 70.0, "buyInitialSize": 70.0, "sellInitialSize": 0.0, "buyInitialPrice": 14600.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 70.0, "buyCurrentSize": 70.0, "sellCurrentSize": 0.0, "marketValue": 994000.0, "tradingSymbol": "MERV - XMEV - EWZ - CI" } ], "instrumentMarketValue": 994000.0, "instrumentInitialSize": 70.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 70.0 }, "XLRE": { "detailedPositions": [ { "symbolReference": "XLRE", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 5010.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 100.0, "buyInitialSize": 100.0, "sellInitialSize": 0.0, "buyInitialPrice": 6150.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 100.0, "buyCurrentSize": 100.0, "sellCurrentSize": 0.0, "marketValue": 501000.0, "tradingSymbol": "MERV - XMEV - XLRE - CI" } ], "instrumentMarketValue": 501000.0, "instrumentInitialSize": 100.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 100.0 }, "TSM": { "detailedPositions": [ { "symbolReference": "TSM", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 18650.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 40.0, "buyInitialSize": 40.0, "sellInitialSize": 0.0, "buyInitialPrice": 19850.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 40.0, "buyCurrentSize": 40.0, "sellCurrentSize": 0.0, "marketValue": 746000.0, "tradingSymbol": "MERV - XMEV - TSM - CI" } ], "instrumentMarketValue": 746000.0, "instrumentInitialSize": 40.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 40.0 }, "MSFT": { "detailedPositions": [ { "symbolReference": "MSFT", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 13600.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 46.0, "buyInitialSize": 46.0, "sellInitialSize": 0.0, "buyInitialPrice": 14550.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 46.0, "buyCurrentSize": 46.0, "sellCurrentSize": 0.0, "marketValue": 625600.0, "tradingSymbol": "MERV - XMEV - MSFT - CI" } ], "instrumentMarketValue": 625600.0, "instrumentInitialSize": 46.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 46.0 }, "QQQ": { "detailedPositions": [ { "symbolReference": "QQQ", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 24475.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 50.0, "buyInitialSize": 50.0, "sellInitialSize": 0.0, "buyInitialPrice": 26125.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 50.0, "buyCurrentSize": 50.0, "sellCurrentSize": 0.0, "marketValue": 1223750.0, "tradingSymbol": "MERV - XMEV - QQQ - CI" } ], "instrumentMarketValue": 1223750.0, "instrumentInitialSize": 50.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 50.0 }, "MELI": { "detailedPositions": [ { "symbolReference": "MELI", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 19375.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 32.0, "buyInitialSize": 32.0, "sellInitialSize": 0.0, "buyInitialPrice": 20175.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 32.0, "buyCurrentSize": 32.0, "sellCurrentSize": 0.0, "marketValue": 620000.0, "tradingSymbol": "MERV - XMEV - MELI - CI" } ], "instrumentMarketValue": 620000.0, "instrumentInitialSize": 32.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 32.0 }, "FXI": { "detailedPositions": [ { "symbolReference": "FXI", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 7320.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 40.0, "buyInitialSize": 40.0, "sellInitialSize": 0.0, "buyInitialPrice": 7630.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 40.0, "buyCurrentSize": 40.0, "sellCurrentSize": 0.0, "marketValue": 292800.0, "tradingSymbol": "MERV - XMEV - FXI - CI" } ], "instrumentMarketValue": 292800.0, "instrumentInitialSize": 40.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 40.0 }, "CAT": { "detailedPositions": [ { "symbolReference": "CAT", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 16125.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 20.0, "buyInitialSize": 20.0, "sellInitialSize": 0.0, "buyInitialPrice": 16891.8297, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 20.0, "buyCurrentSize": 20.0, "sellCurrentSize": 0.0, "marketValue": 322500.0, "tradingSymbol": "MERV - XMEV - CAT - CI" } ], "instrumentMarketValue": 322500.0, "instrumentInitialSize": 20.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 20.0 }, "IEUR": { "detailedPositions": [ { "symbolReference": "IEUR", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 6090.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 100.0, "buyInitialSize": 100.0, "sellInitialSize": 0.0, "buyInitialPrice": 6340.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 100.0, "buyCurrentSize": 100.0, "sellCurrentSize": 0.0, "marketValue": 609000.0, "tradingSymbol": "MERV - XMEV - IEUR - CI" } ], "instrumentMarketValue": 609000.0, "instrumentInitialSize": 100.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 100.0 }, "DIA": { "detailedPositions": [ { "symbolReference": "DIA", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 21500.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 50.0, "buyInitialSize": 50.0, "sellInitialSize": 0.0, "buyInitialPrice": 23400.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 50.0, "buyCurrentSize": 50.0, "sellCurrentSize": 0.0, "marketValue": 1075000.0, "tradingSymbol": "MERV - XMEV - DIA - CI" } ], "instrumentMarketValue": 1075000.0, "instrumentInitialSize": 50.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 50.0 }, "SPY": { "detailedPositions": [ { "symbolReference": "SPY", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 29100.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 60.0, "buyInitialSize": 60.0, "sellInitialSize": 0.0, "buyInitialPrice": 30950.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 60.0, "buyCurrentSize": 60.0, "sellCurrentSize": 0.0, "marketValue": 1746000.0, "tradingSymbol": "MERV - XMEV - SPY - CI" } ], "instrumentMarketValue": 1746000.0, "instrumentInitialSize": 60.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 60.0 }, "AMZN": { "detailedPositions": [ { "symbolReference": "AMZN", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 1320.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 790.0, "buyInitialSize": 790.0, "sellInitialSize": 0.0, "buyInitialPrice": 1425.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 790.0, "buyCurrentSize": 790.0, "sellCurrentSize": 0.0, "marketValue": 1042800.0, "tradingSymbol": "MERV - XMEV - AMZN - CI" } ], "instrumentMarketValue": 1042800.0, "instrumentInitialSize": 790.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 790.0 } }, "STOCK": { "GCDI": { "detailedPositions": [ { "symbolReference": "GCDI", "settlType": 0, "settlementDate": 1745204400000, "contractType": "STOCK", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 19.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 800.0, "buyInitialSize": 800.0, "sellInitialSize": 0.0, "buyInitialPrice": 21.05, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 800.0, "buyCurrentSize": 800.0, "sellCurrentSize": 0.0, "marketValue": 15200.0, "tradingSymbol": "MERV - XMEV - GCDI - CI"}], "instrumentMarketValue": 15200.0, "instrumentInitialSize": 800.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 800.0}, "BYMA": {"detailedPositions": [{"symbolReference": "BYMA", "settlType": 0, "settlementDate": 1745204400000, "contractType": "STOCK", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 391.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 75.0, "buyInitialSize": 75.0, "sellInitialSize": 0.0, "buyInitialPrice": 409.5, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 75.0, "buyCurrentSize": 75.0, "sellCurrentSize": 0.0, "marketValue": 29325.0, "tradingSymbol": "MERV - XMEV - BYMA - CI"}], "instrumentMarketValue": 29325.0, "instrumentInitialSize": 75.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 75.0}, "YPFD": {"detailedPositions": [ { "symbolReference": "YPFD", "settlType": 0, "settlementDate": 1745204400000, "contractType": "STOCK", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 36375.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 20.0, "buyInitialSize": 20.0, "sellInitialSize": 0.0, "buyInitialPrice": 38825.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 20.0, "buyCurrentSize": 20.0, "sellCurrentSize": 0.0, "marketValue": 727500.0, "tradingSymbol": "MERV - XMEV - YPFD - CI" } ], "instrumentMarketValue": 727500.0, "instrumentInitialSize": 20.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 20.0 } } }, "lastCalculation": 1745266135887 } }'
|
|
47
|
+
json_data = '{ "status": "OK", "detailedPosition": { "account": "10825", "totalMarketValue": 14725200.0, "report": { "CEDEAR": { "NFLX": { "detailedPositions": [ { "symbolReference": "NFLX", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 23300.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 30.0, "buyInitialSize": 30.0, "sellInitialSize": 0.0, "buyInitialPrice": 23575.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 30.0, "buyCurrentSize": 30.0, "sellCurrentSize": 0.0, "marketValue": 699000.0, "tradingSymbol": "MERV - XMEV - NFLX - CI" } ], "instrumentMarketValue": 699000.0, "instrumentInitialSize": 30.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 30.0 }, "GOOGL": { "detailedPositions": [ { "symbolReference": "GOOGL", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 2885.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 120.0, "buyInitialSize": 120.0, "sellInitialSize": 0.0, "buyInitialPrice": 3105.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 120.0, "buyCurrentSize": 120.0, "sellCurrentSize": 0.0, "marketValue": 346200.0, "tradingSymbol": "MERV - XMEV - GOOGL - CI" } ], "instrumentMarketValue": 346200.0, "instrumentInitialSize": 120.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 120.0 }, "META": { "detailedPositions": [ { "symbolReference": "META", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 22925.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 13.0, "buyInitialSize": 13.0, "sellInitialSize": 0.0, "buyInitialPrice": 24650.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 13.0, "buyCurrentSize": 13.0, "sellCurrentSize": 0.0, "marketValue": 298025.0, "tradingSymbol": "MERV - XMEV - META - CI" } ], "instrumentMarketValue": 298025.0, "instrumentInitialSize": 13.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 13.0 }, "NVDA": { "detailedPositions": [ { "symbolReference": "NVDA", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 4585.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 300.0, "buyInitialSize": 300.0, "sellInitialSize": 0.0, "buyInitialPrice": 5090.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 300.0, "buyCurrentSize": 300.0, "sellCurrentSize": 0.0, "marketValue": 1375500.0, "tradingSymbol": "MERV - XMEV - NVDA - CI" } ], "instrumentMarketValue": 1375500.0, "instrumentInitialSize": 300.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 300.0 }, "AAPL": { "detailedPositions": [ { "symbolReference": "AAPL", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 10875.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 80.0, "buyInitialSize": 80.0, "sellInitialSize": 0.0, "buyInitialPrice": 11450.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 80.0, "buyCurrentSize": 80.0, "sellCurrentSize": 0.0, "marketValue": 870000.0, "tradingSymbol": "MERV - XMEV - AAPL - CI" } ], "instrumentMarketValue": 870000.0, "instrumentInitialSize": 80.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 80.0 }, "IBIT": { "detailedPositions": [ { "symbolReference": "IBIT", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 5660.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 100.0, "buyInitialSize": 100.0, "sellInitialSize": 0.0, "buyInitialPrice": 5630.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 100.0, "buyCurrentSize": 100.0, "sellCurrentSize": 0.0, "marketValue": 566000.0, "tradingSymbol": "MERV - XMEV - IBIT - CI" } ], "instrumentMarketValue": 566000.0, "instrumentInitialSize": 100.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 100.0 }, "EWZ": { "detailedPositions": [ { "symbolReference": "EWZ", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 14200.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 70.0, "buyInitialSize": 70.0, "sellInitialSize": 0.0, "buyInitialPrice": 14600.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 70.0, "buyCurrentSize": 70.0, "sellCurrentSize": 0.0, "marketValue": 994000.0, "tradingSymbol": "MERV - XMEV - EWZ - CI" } ], "instrumentMarketValue": 994000.0, "instrumentInitialSize": 70.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 70.0 }, "XLRE": { "detailedPositions": [ { "symbolReference": "XLRE", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 5010.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 100.0, "buyInitialSize": 100.0, "sellInitialSize": 0.0, "buyInitialPrice": 6150.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 100.0, "buyCurrentSize": 100.0, "sellCurrentSize": 0.0, "marketValue": 501000.0, "tradingSymbol": "MERV - XMEV - XLRE - CI" } ], "instrumentMarketValue": 501000.0, "instrumentInitialSize": 100.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 100.0 }, "TSM": { "detailedPositions": [ { "symbolReference": "TSM", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 18650.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 40.0, "buyInitialSize": 40.0, "sellInitialSize": 0.0, "buyInitialPrice": 19850.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 40.0, "buyCurrentSize": 40.0, "sellCurrentSize": 0.0, "marketValue": 746000.0, "tradingSymbol": "MERV - XMEV - TSM - CI" } ], "instrumentMarketValue": 746000.0, "instrumentInitialSize": 40.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 40.0 }, "MSFT": { "detailedPositions": [ { "symbolReference": "MSFT", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 13600.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 46.0, "buyInitialSize": 46.0, "sellInitialSize": 0.0, "buyInitialPrice": 14550.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 46.0, "buyCurrentSize": 46.0, "sellCurrentSize": 0.0, "marketValue": 625600.0, "tradingSymbol": "MERV - XMEV - MSFT - CI" } ], "instrumentMarketValue": 625600.0, "instrumentInitialSize": 46.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 46.0 }, "QQQ": { "detailedPositions": [ { "symbolReference": "QQQ", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 24475.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 50.0, "buyInitialSize": 50.0, "sellInitialSize": 0.0, "buyInitialPrice": 26125.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 50.0, "buyCurrentSize": 50.0, "sellCurrentSize": 0.0, "marketValue": 1223750.0, "tradingSymbol": "MERV - XMEV - QQQ - CI" } ], "instrumentMarketValue": 1223750.0, "instrumentInitialSize": 50.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 50.0 }, "MELI": { "detailedPositions": [ { "symbolReference": "MELI", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 19375.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 32.0, "buyInitialSize": 32.0, "sellInitialSize": 0.0, "buyInitialPrice": 20175.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 32.0, "buyCurrentSize": 32.0, "sellCurrentSize": 0.0, "marketValue": 620000.0, "tradingSymbol": "MERV - XMEV - MELI - CI" } ], "instrumentMarketValue": 620000.0, "instrumentInitialSize": 32.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 32.0 }, "FXI": { "detailedPositions": [ { "symbolReference": "FXI", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 7320.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 40.0, "buyInitialSize": 40.0, "sellInitialSize": 0.0, "buyInitialPrice": 7630.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 40.0, "buyCurrentSize": 40.0, "sellCurrentSize": 0.0, "marketValue": 292800.0, "tradingSymbol": "MERV - XMEV - FXI - CI" } ], "instrumentMarketValue": 292800.0, "instrumentInitialSize": 40.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 40.0 }, "CAT": { "detailedPositions": [ { "symbolReference": "CAT", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 16125.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 20.0, "buyInitialSize": 20.0, "sellInitialSize": 0.0, "buyInitialPrice": 16891.8297, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 20.0, "buyCurrentSize": 20.0, "sellCurrentSize": 0.0, "marketValue": 322500.0, "tradingSymbol": "MERV - XMEV - CAT - CI" } ], "instrumentMarketValue": 322500.0, "instrumentInitialSize": 20.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 20.0 }, "IEUR": { "detailedPositions": [ { "symbolReference": "IEUR", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 6090.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 100.0, "buyInitialSize": 100.0, "sellInitialSize": 0.0, "buyInitialPrice": 6340.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 100.0, "buyCurrentSize": 100.0, "sellCurrentSize": 0.0, "marketValue": 609000.0, "tradingSymbol": "MERV - XMEV - IEUR - CI" } ], "instrumentMarketValue": 609000.0, "instrumentInitialSize": 100.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 100.0 }, "DIA": { "detailedPositions": [ { "symbolReference": "DIA", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 21500.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 50.0, "buyInitialSize": 50.0, "sellInitialSize": 0.0, "buyInitialPrice": 23400.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 50.0, "buyCurrentSize": 50.0, "sellCurrentSize": 0.0, "marketValue": 1075000.0, "tradingSymbol": "MERV - XMEV - DIA - CI" } ], "instrumentMarketValue": 1075000.0, "instrumentInitialSize": 50.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 50.0 }, "SPY": { "detailedPositions": [ { "symbolReference": "SPY", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 29100.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 60.0, "buyInitialSize": 60.0, "sellInitialSize": 0.0, "buyInitialPrice": 30950.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 60.0, "buyCurrentSize": 60.0, "sellCurrentSize": 0.0, "marketValue": 1746000.0, "tradingSymbol": "MERV - XMEV - SPY - CI" } ], "instrumentMarketValue": 1746000.0, "instrumentInitialSize": 60.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 60.0 }, "AMZN": { "detailedPositions": [ { "symbolReference": "AMZN", "settlType": 0, "settlementDate": 1745204400000, "contractType": "CEDEAR", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 1320.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 790.0, "buyInitialSize": 790.0, "sellInitialSize": 0.0, "buyInitialPrice": 1425.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 790.0, "buyCurrentSize": 790.0, "sellCurrentSize": 0.0, "marketValue": 1042800.0, "tradingSymbol": "MERV - XMEV - AMZN - CI" } ], "instrumentMarketValue": 1042800.0, "instrumentInitialSize": 790.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 790.0 } }, "STOCK": { "GCDI": { "detailedPositions": [ { "symbolReference": "GCDI", "settlType": 0, "settlementDate": 1745204400000, "contractType": "STOCK", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 19.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 800.0, "buyInitialSize": 800.0, "sellInitialSize": 0.0, "buyInitialPrice": 21.05, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 800.0, "buyCurrentSize": 800.0, "sellCurrentSize": 0.0, "marketValue": 15200.0, "tradingSymbol": "MERV - XMEV - GCDI - CI"}], "instrumentMarketValue": 15200.0, "instrumentInitialSize": 800.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 800.0}, "BYMA": {"detailedPositions": [{"symbolReference": "BYMA", "settlType": 0, "settlementDate": 1745204400000, "contractType": "STOCK", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 391.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 75.0, "buyInitialSize": 75.0, "sellInitialSize": 0.0, "buyInitialPrice": 409.5, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 75.0, "buyCurrentSize": 75.0, "sellCurrentSize": 0.0, "marketValue": 29325.0, "tradingSymbol": "MERV - XMEV - BYMA - CI"}], "instrumentMarketValue": 29325.0, "instrumentInitialSize": 75.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 75.0}, "YPFD": {"detailedPositions": [ { "symbolReference": "YPFD", "settlType": 0, "settlementDate": 1745204400000, "contractType": "STOCK", "priceConversionFactor": 1.0, "contractSize": 1.0, "marketPrice": 36375.0, "currency": "ARS", "exchangeRate": 1.0, "contractMultiplier": 1.0, "totalInitialSize": 20.0, "buyInitialSize": 20.0, "sellInitialSize": 0.0, "buyInitialPrice": 38825.0, "sellInitialPrice": 0, "totalFilledSize": 0, "buyFilledSize": 0, "sellFilledSize": 0, "buyFilledPrice": 0, "sellFilledPrice": 0, "totalCurrentSize": 20.0, "buyCurrentSize": 20.0, "sellCurrentSize": 0.0, "marketValue": 727500.0, "tradingSymbol": "MERV - XMEV - YPFD - CI" } ], "instrumentMarketValue": 727500.0, "instrumentInitialSize": 20.0, "instrumentFilledSize": 0, "instrumentCurrentSize": 20.0 } } }, "lastCalculation": 1745266135887 } }'
|
|
37
48
|
response = DetailedPositionsResponse.model_validate_json(json_data)
|
|
38
49
|
assert response.status == "OK"
|
|
39
|
-
assert response.detailed_position.account == "
|
|
50
|
+
assert response.detailed_position.account == "10825"
|
|
40
51
|
assert response.detailed_position.total_market_value == 14725200.0
|
|
41
52
|
assert "CEDEAR" in response.detailed_position.report
|
|
42
53
|
assert "STOCK" in response.detailed_position.report
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
from typing import Any, List, Optional
|
|
2
|
-
from decimal import Decimal
|
|
3
|
-
from primary_api_models.commons import CommonResponse, MessageBase, PriceSize, PriceSizeDate, InstrumentId, PrimaryBaseModel
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
class MarketData(PrimaryBaseModel):
|
|
7
|
-
bi: Optional[List[PriceSize]] = None
|
|
8
|
-
of: Optional[List[PriceSize]] = None
|
|
9
|
-
la: Optional[PriceSizeDate] = None
|
|
10
|
-
op: Optional[Decimal] = None
|
|
11
|
-
cl: Optional[PriceSizeDate] = None
|
|
12
|
-
hi: Optional[Decimal] = None
|
|
13
|
-
lo: Optional[Decimal] = None
|
|
14
|
-
se: Optional[PriceSizeDate] = None
|
|
15
|
-
tv: Optional[Any] = None
|
|
16
|
-
oi: Optional[Any] = None
|
|
17
|
-
iv: Optional[Any] = None
|
|
18
|
-
ev: Optional[Any] = None
|
|
19
|
-
nv: Optional[Any] = None
|
|
20
|
-
acp: Optional[Any] = None
|
|
21
|
-
tc: Optional[Any] = None
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
class MarketDataResponse(CommonResponse):
|
|
25
|
-
"""For REST API response"""
|
|
26
|
-
market_data: MarketData
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
class MarketDataMessage(MessageBase):
|
|
30
|
-
"""For Websocket messages"""
|
|
31
|
-
instrument_id: InstrumentId
|
|
32
|
-
market_data: MarketData
|
|
File without changes
|
|
File without changes
|
{primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models/detailed_instruments.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models.egg-info/requires.txt
RENAMED
|
File without changes
|
{primary_api_models-0.4.5 → primary_api_models-0.4.7}/primary_api_models.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|