Push Real-time Trades
Real-time trades data push of the subscribed security.
SDK Links
Python |
Rust |
Go |
Node.js |
info
Business Command: 104
Data Format
Properties
Name | Type | Description |
---|---|---|
symbol | string | Security code, for example: AAPL.US |
sequence | int64 | Sequence number |
trades | object[] | Trades data |
∟ price | string | Price |
∟ volume | int64 | Volume |
∟ timestamp | int64 | Time of trading |
∟ trade_type | string | Trade type |
∟ direction | int32 | Trade direction Optional value: 0 - neutral1 - down2 - up |
∟ trade_session | int32 | Trade session, see TradeSession |
Trade Type
HK
*
- Overseas tradeD
- Odd-lot tradeM
- Non-direct off-exchange tradeP
- Late trade (Off-exchange previous day)U
- Auction tradeX
- Direct off-exchange tradeY
- Automatch internalized
US
A
- AcquisitionB
- Bunched tradeD
- DistributionF
- Intermarket sweepG
- Bunched sold tradesH
- Price variation tradeI
- Odd lot tradeK
- Rule 155 trde(NYSE MKT)M
- Market center close priceP
- Prior reference priceQ
- Market center open priceS
- Split tradeV
- Contingent tradeW
- Average price tradeX
- Cross trade1
- Stopped stock(Regular trade)
Protobuf
message PushTrade {
string symbol = 1;
int64 sequence = 2;
repeated Trade trade = 3;
}
message Trade {
string price = 1;
int64 volume = 2;
int64 timestamp = 3;
string trade_type = 4;
int32 direction = 5;
TradeSession trade_session = 6;
}
Example
# Push Real-time Trades
# https://open.longportapp.com/docs/quote/push/push-trade
# To subscribe quotes data, please check whether "Developers" - "Quote authority" is correct.
# https://open.longportapp.com/account
#
# - HK Market - BMP basic quotation is unable to subscribe with WebSocket as it has no real-time quote push.
# - US Market - LV1 Nasdaq Basic (Only Open API).
#
# Before running, please visit the "Developers" to ensure that the account has the correct quotes authority.
# If you do not have the quotes authority, you can enter "Me - My Quotes - Store" to purchase the authority through the "LongPort" mobile app.
from time import sleep
from longport.openapi import QuoteContext, Config, SubType, PushTrades
def on_trades(symbol: str, event: PushTrades):
print(symbol, event)
config = Config.from_env()
ctx = QuoteContext(config)
ctx.set_on_trades(on_trade)
ctx.subscribe(["700.HK", "AAPL.US"], [SubType.Trade])
sleep(30)
JSON Example
{
"symbol": "700.HK",
"sequence": 160808750000000,
"trades": [
{
"price": "158.760",
"volume": 1,
"timestamp": 1651103979,
"trade_type": "I",
"direction": 0,
"trade_session": 2
},
{
"price": "158.745",
"volume": 1,
"timestamp": 1651103985,
"trade_type": "I",
"direction": 0,
"trade_session": 2
},
{
"price": "158.800",
"volume": 1,
"timestamp": 1651103995,
"trade_type": "I",
"direction": 0,
"trade_session": 2
}
]
}