Skip to content

quant-vn/vdatafeed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vDatafeed

vDatafeed: A Python wrapper for Viet Nam Datafeed API

PyPI - Version Python Version PyPI - Downloads License: MIT

Installation

pip install vdatafeed

Supported Providers

Provider Status
SSI ✅ Supported
SSI-v2 ⚠️ Work in Progress
DNSE ⚠️ Work in Progress
DNSE-v2 ⚠️ Work in Progress

Usage

Financial data

from vdatafeed import Datafeed, Provider, SSIConfig


datafeed = Datafeed(
    provider=Provider.SSI.value,
    config=SSIConfig(
        consumer_id="<SSI_CONSUMER_ID>",
        consumer_secret="<SSI_CONSUMER_SECRET>"
    )
)

# Get list of instruments
datafeed.api.get_instruments()
# Get instrument details
datafeed.api.get_instrument_details("SSI")
# Get list of indices
datafeed.api.get_indices()
# Get list of instruments in an index
datafeed.api.get_indices_instruments("VN30")
# Get daily instrument info
datafeed.api.get_daily_instrument_info(instrument="SSI", from_date="2024-09-01", to_date="2024-09-10")
# Get daily all instruments info
datafeed.api.get_daily_instruments_info(from_date="2024-09-10", to_date="2024-09-10")
# Get daily indices info
datafeed.api.get_daily_indices_info(index="VN30", from_date="2024-09-01", to_date="2024-09-10")
# Get end of day OHLCV
datafeed.api.get_endofday_ohlcv(instrument="SSI", from_date="2024-09-01", to_date="2024-09-10")
# Get intraday OHLCV
datafeed.api.get_intraday_ohlcv(instrument="SSI", from_date="2024-09-01", to_date="2024-09-10")

Streaming data

import asyncio
from vdatafeed import Datafeed, Provider, SSIConfig


datafeed = Datafeed(
    provider=Provider.SSI.value,
    config=SSIConfig(
        consumer_id="<SSI_CONSUMER_ID>",
        consumer_secret="<SSI_CONSUMER_SECRET>"
    )
)


def on_trade_message(msg):
    print(f"TRADE: {msg}")


def on_quote_message(msg):
    print(f"QUOTE: {msg}")


asyncio.run(
    datafeed.hub.listen(
        input("Please select Symbol(SSI)/Index(VNINDEX/VN30) or list(SSI,VCB): "),
        on_trade_message,
        on_quote_message
    )
)

List available providers

from vdatafeed import list_providers

print(list_providers())  # ['ssi']

Packages

 
 
 

Contributors

Languages