A Python client for the TradingView WebSocket API, providing real-time market data and symbol search functionality.
- 🔍 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
If you like this project, consider buying me a coffee 😊
pip install tradingview-apifrom 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']}")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()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_updateThe package includes comprehensive examples in the examples/ folder:
# 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- Symbol Search (
example1_symbol_search.py): Demonstrates symbol search functionality - Basic Client (
example2_basic_client.py): Basic WebSocket connection and authentication - WebSocket with Ping (
example3_websocket_with_ping.py): Connection with automatic ping/pong - Chart Session (
example4_chart_session.py): Real-time market data subscription - Multiple Symbols (
example5_multiple_symbols.py): Subscribe to multiple symbols simultaneously
Search for trading symbols.
Parameters:
query(str): Search query (e.g., "AAPL", "BTC")
Returns:
- List of dictionaries containing symbol information:
symbol: Symbol identifierdescription: Symbol descriptionexchange: Exchange nametype: Symbol typecurrency: Currency code
Connect to TradingView WebSocket.
Disconnect from TradingView WebSocket.
Check if connected to TradingView.
on_connect: Called when connectedon_login: Called when logged inon_data: Called when data is receivedon_error: Called when an error occurson_close: Called when connection closes
Create a new chart session.
Parameters:
client: TradingViewClient instancesymbol: Symbol to subscribe to (e.g., "NASDAQ:AAPL")
Subscribe to market data for the symbol.
Unsubscribe from market data.
on_update: Called when market data is receivedon_error: Called when an error occurs
git clone https://github.com/kaash04/TradingView-API-Python.git
cd TradingView-Python
pip install -e .# Run individual examples
python examples/example1_symbol_search.pyThis project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.