Skip to content

kash04x/TradingView-API-Python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

TradingView Python API

A Python client for the TradingView WebSocket API, providing real-time market data and symbol search functionality.

Features

  • πŸ” Symbol Search: Search for trading symbols across exchanges
  • πŸ”Œ WebSocket Connection: Real-time connection to TradingView
  • πŸ“Š Chart Sessions: Subscribe to live market data for specific symbols
  • πŸ”„ Ping/Pong: Automatic connection keep-alive
  • πŸ“ˆ Multiple Symbols: Subscribe to multiple symbols simultaneously

Support

If you like this project, consider buying me a coffee 😊

Buy Me a Coffee

Installation

pip install tradingview-api

Quick Start

Symbol Search

from TradingView import SymbolSearch

# Create search client
search = SymbolSearch()

# Search for symbols
results = search.search_symbol("AAPL")
for result in results:
    print(f"{result['symbol']}: {result['description']}")

WebSocket Connection

from TradingView import TradingViewClient

# Create client
client = TradingViewClient()

# Set up event handlers
def on_connect():
    print("Connected!")

def on_login():
    print("Logged in!")

client.on_connect = on_connect
client.on_login = on_login

# Connect
client.connect()

Chart Session

from TradingView import TradingViewClient, ChartSession

# Create client and connect
client = TradingViewClient()
client.connect()

# Create chart session
session = ChartSession(client, "NASDAQ:AAPL")

# Subscribe to market data
session.subscribe()

# Handle updates
def on_update(data):
    print(f"Market data: {data}")

session.on_update = on_update

Examples

The package includes comprehensive examples in the examples/ folder:

Individual Examples

# Run specific examples
python examples/example1_symbol_search.py
python examples/example2_basic_client.py
python examples/example3_websocket_with_ping.py
python examples/example4_chart_session.py
python examples/example5_multiple_symbols.py
python examples/example6_chart_types.py

Example Descriptions

  1. Symbol Search (example1_symbol_search.py): Demonstrates symbol search functionality
  2. Basic Client (example2_basic_client.py): Basic WebSocket connection and authentication
  3. WebSocket with Ping (example3_websocket_with_ping.py): Connection with automatic ping/pong
  4. Chart Session (example4_chart_session.py): Real-time market data subscription
  5. Multiple Symbols (example5_multiple_symbols.py): Subscribe to multiple symbols simultaneously

API Reference

SymbolSearch

search_symbol(query: str) -> List[Dict]

Search for trading symbols.

Parameters:

  • query (str): Search query (e.g., "AAPL", "BTC")

Returns:

  • List of dictionaries containing symbol information:
    • symbol: Symbol identifier
    • description: Symbol description
    • exchange: Exchange name
    • type: Symbol type
    • currency: Currency code

TradingViewClient

connect()

Connect to TradingView WebSocket.

disconnect()

Disconnect from TradingView WebSocket.

is_connected() -> bool

Check if connected to TradingView.

Event Handlers

  • on_connect: Called when connected
  • on_login: Called when logged in
  • on_data: Called when data is received
  • on_error: Called when an error occurs
  • on_close: Called when connection closes

ChartSession

__init__(client: TradingViewClient, symbol: str)

Create a new chart session.

Parameters:

  • client: TradingViewClient instance
  • symbol: Symbol to subscribe to (e.g., "NASDAQ:AAPL")

subscribe()

Subscribe to market data for the symbol.

unsubscribe()

Unsubscribe from market data.

Event Handlers

  • on_update: Called when market data is received
  • on_error: Called when an error occurs

Development

Setup

git clone https://github.com/kaash04/TradingView-API-Python.git
cd TradingView-Python
pip install -e .

Running Examples

# Run individual examples
python examples/example1_symbol_search.py

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

About

Python implementation for anonymous access to TradingView market data via WebSocket and symbol search

Resources

License

Stars

Watchers

Forks

Contributors

Languages