821 lines
37 KiB
JSON
821 lines
37 KiB
JSON
{
|
|
// this configuration file works by first loading all top-level
|
|
// configuration items and then will load the specified environment
|
|
// on top, this provides a layering affect. environment names can be
|
|
// anything, and just require definition in this file. There's
|
|
// two predefined environments, 'backtesting' and 'live', feel free
|
|
// to add more!
|
|
|
|
"environment": "backtesting", // "live-paper", "backtesting", "live-interactive", "live-interactive-iqfeed"
|
|
|
|
// algorithm class selector
|
|
"algorithm-type-name": "BasicTemplateFrameworkAlgorithm",
|
|
|
|
// Algorithm language selector - options CSharp, Python
|
|
"algorithm-language": "CSharp",
|
|
|
|
//Physical DLL location
|
|
"algorithm-location": "QuantConnect.Algorithm.CSharp.dll",
|
|
//"algorithm-location": "../../../Algorithm.Python/BasicTemplateFrameworkAlgorithm.py",
|
|
|
|
//Research notebook
|
|
//"composer-dll-directory": ".",
|
|
|
|
// engine
|
|
"data-folder": "../../../Data/",
|
|
|
|
// debugging configuration - options for debugging-method LocalCmdLine, VisualStudio, Debugpy, PyCharm
|
|
"debugging": false,
|
|
"debugging-method": "LocalCmdline",
|
|
|
|
// location of a python virtual env to use libraries from
|
|
//"python-venv": "/venv",
|
|
|
|
// handlers
|
|
"log-handler": "QuantConnect.Logging.CompositeLogHandler",
|
|
"messaging-handler": "QuantConnect.Messaging.Messaging",
|
|
"job-queue-handler": "QuantConnect.Queues.JobQueue",
|
|
"api-handler": "QuantConnect.Api.Api",
|
|
"map-file-provider": "QuantConnect.Data.Auxiliary.LocalDiskMapFileProvider",
|
|
"factor-file-provider": "QuantConnect.Data.Auxiliary.LocalDiskFactorFileProvider",
|
|
"data-provider": "QuantConnect.Lean.Engine.DataFeeds.DefaultDataProvider",
|
|
"data-channel-provider": "DataChannelProvider",
|
|
"object-store": "QuantConnect.Lean.Engine.Storage.LocalObjectStore",
|
|
"data-aggregator": "QuantConnect.Lean.Engine.DataFeeds.AggregationManager",
|
|
|
|
// limits on number of symbols to allow
|
|
"symbol-minute-limit": 10000,
|
|
"symbol-second-limit": 10000,
|
|
"symbol-tick-limit": 10000,
|
|
|
|
// retry lookback periods for automatic security seed history requests
|
|
"seed-lookback-period": 5,
|
|
"seed-retry-minute-lookback-period": 1440,
|
|
"seed-retry-hour-lookback-period": 24,
|
|
"seed-retry-daily-lookback-period": 10,
|
|
|
|
// Ignore unknown asset types from brokerages
|
|
"ignore-unknown-asset-holdings": true,
|
|
|
|
// The maximum amount of transaction threads for concurrent order submissions if the brokerage supports it.
|
|
// The pool starts at the minimum and grows up to the maximum on demand.
|
|
//"minimum-transaction-threads": 2,
|
|
//"maximum-transaction-threads": 10,
|
|
|
|
// log missing data files, useful for debugging
|
|
"show-missing-data-logs": false,
|
|
|
|
// For live trading during warmup we limit the amount of historical data fetched from the history provider and expect the data to be on disk for older data
|
|
"maximum-warmup-history-days-look-back": 5,
|
|
|
|
// limits the amount of data points per chart series. Applies only for backtesting
|
|
"maximum-data-points-per-chart-series": 1000000,
|
|
"maximum-chart-series": 30,
|
|
|
|
// if one uses true in following token, market hours will remain open all hours and all days.
|
|
// if one uses false will make lean operate only during regular market hours.
|
|
"force-exchange-always-open": false,
|
|
|
|
// save list of transactions to the specified csv file
|
|
"transaction-log": "",
|
|
|
|
// Prefix for Windows reserved filenames
|
|
"reserved-words-prefix": "@",
|
|
|
|
// To get your api access token go to quantconnect.com/account
|
|
"job-user-id": "0",
|
|
"api-access-token": "",
|
|
"job-organization-id": "",
|
|
|
|
// live data configuration
|
|
"live-data-url": "ws://www.quantconnect.com/api/v2/live/data/",
|
|
"live-data-port": 8020,
|
|
|
|
// live portfolio state
|
|
"live-cash-balance": "",
|
|
"live-holdings": "[]",
|
|
|
|
// interactive brokers configuration
|
|
"ib-account": "",
|
|
"ib-user-name": "",
|
|
"ib-password": "",
|
|
"ib-host": "127.0.0.1",
|
|
"ib-port": "4002",
|
|
"ib-agent-description": "Individual",
|
|
"ib-tws-dir": "C:\\Jts",
|
|
"ib-trading-mode": "paper",
|
|
"ib-enable-delayed-streaming-data": false,
|
|
"ib-weekly-restart-utc-time": "22:00:00",
|
|
"ib-financial-advisors-group-filter": "",
|
|
|
|
// tradier configuration
|
|
"tradier-environment": "paper",
|
|
"tradier-account-id": "",
|
|
"tradier-access-token": "",
|
|
|
|
// oanda configuration
|
|
"oanda-environment": "Practice",
|
|
"oanda-access-token": "",
|
|
"oanda-account-id": "",
|
|
|
|
// fxcm configuration
|
|
"fxcm-server": "http://www.fxcorporate.com/Hosts.jsp",
|
|
"fxcm-terminal": "Demo", //Real or Demo
|
|
"fxcm-user-name": "",
|
|
"fxcm-password": "",
|
|
"fxcm-account-id": "",
|
|
|
|
// iqfeed configuration
|
|
"iqfeed-host": "127.0.0.1",
|
|
"iqfeed-username": "",
|
|
"iqfeed-password": "",
|
|
"iqfeed-productName": "",
|
|
"iqfeed-version": "1.0",
|
|
|
|
// coinbase configuration
|
|
"coinbase-rest-api": "https://api.coinbase.com",
|
|
"coinbase-url": "wss://advanced-trade-ws.coinbase.com",
|
|
"coinbase-api-key": "",
|
|
"coinbase-api-secret": "",
|
|
|
|
// bitfinex configuration
|
|
"bitfinex-api-secret": "",
|
|
"bitfinex-api-key": "",
|
|
|
|
// binance configuration
|
|
"binance-api-secret": "",
|
|
"binance-api-key": "",
|
|
// spot/margin
|
|
"binance-api-url": "https://api.binance.com",
|
|
"binance-websocket-url": "wss://stream.binance.com:9443/ws",
|
|
"binance-orders-websocket-url": "wss://ws-api.binance.com:9443/ws-api/v3",
|
|
// USDT futures
|
|
"binance-fapi-url": "https://fapi.binance.com",
|
|
"binance-fwebsocket-url": "wss://fstream.binance.com/private/ws",
|
|
// Coin futures
|
|
"binance-dapi-url": "https://dapi.binance.com",
|
|
"binance-dwebsocket-url": "wss://dstream.binance.com/ws",
|
|
|
|
// binance.us configuration
|
|
"binanceus-api-secret": "",
|
|
"binanceus-api-key": "",
|
|
"binanceus-api-url": "https://api.binance.us",
|
|
"binanceus-websocket-url": "wss://stream.binance.us:9443/ws",
|
|
|
|
|
|
// bybit configuration
|
|
"bybit-api-secret": "",
|
|
"bybit-api-key": "",
|
|
"bybit-api-url": "https://api.bybit.com",
|
|
"bybit-websocket-url": "wss://stream.bybit.com",
|
|
|
|
// dydx configuration
|
|
//"dydx-mnemonic": "",
|
|
"dydx-private-key-hex": "",
|
|
"dydx-address": "",
|
|
"dydx-subaccount-number": 0,
|
|
|
|
"dydx-node-api-rest": "https://dydx-ops-rest.kingnodes.com",
|
|
"dydx-node-api-grpc": "https://dydx-ops-grpc.kingnodes.com:443",
|
|
"dydx-indexer-api-rest": "https://indexer.dydx.trade/v4",
|
|
"dydx-indexer-api-wss": "wss://indexer.dydx.trade/v4/ws",
|
|
"dydx-chain-id": "dydx-mainnet-1",
|
|
|
|
// Eze configuration
|
|
"eze-api-address-url": "",
|
|
"eze-port": "",
|
|
"eze-domain": "",
|
|
"eze-locale": "",
|
|
"eze-password": "",
|
|
"eze-user-name": "",
|
|
"eze-trading-route": "",
|
|
"eze-trading-account": "",
|
|
|
|
// kraken configuration
|
|
"kraken-api-secret": "",
|
|
"kraken-api-key": "",
|
|
"kraken-verification-tier": "Starter", // Starter, Intermediate, Pro
|
|
|
|
// wolverine configuration
|
|
"wolverine-host": "",
|
|
"wolverine-port": "",
|
|
"wolverine-account": "",
|
|
"wolverine-sender-comp-id": "",
|
|
"wolverine-target-comp-id": "",
|
|
"wolverine-on-behalf-of-comp-id": "",
|
|
"wolverine-log-fix-messages": false,
|
|
|
|
// RBI configuration
|
|
"rbi-host": "",
|
|
"rbi-port": "",
|
|
"rbi-account": "",
|
|
"rbi-sender-comp-id": "",
|
|
"rbi-target-comp-id": "",
|
|
"rbi-on-behalf-of-comp-id": "",
|
|
"rbi-log-fix-messages": false,
|
|
|
|
// Trading Technologies configuration
|
|
"tt-user-name": "",
|
|
"tt-session-password": "",
|
|
"tt-account-name": "",
|
|
"tt-rest-app-key": "",
|
|
"tt-rest-app-secret": "",
|
|
"tt-rest-environment": "",
|
|
"tt-market-data-sender-comp-id": "",
|
|
"tt-market-data-target-comp-id": "",
|
|
"tt-market-data-host": "",
|
|
"tt-market-data-port": "",
|
|
"tt-order-routing-sender-comp-id": "",
|
|
"tt-order-routing-target-comp-id": "",
|
|
"tt-order-routing-host": "",
|
|
"tt-order-routing-port": "",
|
|
"tt-log-fix-messages": false,
|
|
|
|
// Trade Station configuration
|
|
"trade-station-client-id": "",
|
|
"trade-station-client-secret": "",
|
|
"trade-station-redirect-url": "http://localhost",
|
|
"trade-station-refresh-token": "",
|
|
"trade-station-api-url": "https://sim-api.tradestation.com",
|
|
"trade-station-account-type": "Cash|Margin|Futures",
|
|
"trade-station-account-id": "",
|
|
|
|
// Alpaca configuration
|
|
"alpaca-api-key": "",
|
|
"alpaca-api-secret": "",
|
|
"alpaca-access-token": "",
|
|
"alpaca-paper-trading": true,
|
|
|
|
// Charles Schwab configuration
|
|
"charles-schwab-api-url": "https://api.schwabapi.com",
|
|
"charles-schwab-app-key": "",
|
|
"charles-schwab-secret": "",
|
|
"charles-schwab-account-number": "",
|
|
// Case 1 (normal)
|
|
"charles-schwab-refresh-token": "",
|
|
// Case 2 (developing)
|
|
"charles-schwab-authorization-code-from-url": "",
|
|
"charles-schwab-redirect-url": "",
|
|
|
|
// Webull configuration
|
|
"webull-api-url": "https://api.webull.com",
|
|
"webull-trade-grpc-url": "https://events-api.webull.com",
|
|
"webull-app-key": "",
|
|
"webull-app-secret": "",
|
|
"webull-account-id": "",
|
|
|
|
// Tastytrade configuration
|
|
"tastytrade-api-url": "",
|
|
"tastytrade-websocket-url": "",
|
|
"tastytrade-username": "",
|
|
"tastytrade-password": "",
|
|
"tastytrade-account-number": "",
|
|
|
|
// Public.com configuration
|
|
"public-api-url": "https://api.public.com",
|
|
"public-secret-key": "",
|
|
// Users can have multiple different accounts
|
|
"public-account-number": "",
|
|
|
|
// Exante trading configuration
|
|
// client-id, application-id, shared-key are required to access Exante REST API
|
|
// Exante generates them at https://exante.eu/clientsarea/dashboard/ after adding an application
|
|
"exante-client-id": "",
|
|
"exante-application-id": "",
|
|
"exante-shared-key": "",
|
|
"exante-account-id": "", // Account-id is assigned after registration at Exante
|
|
"exante-platform-type": "", // Environment of the application: live or demo
|
|
|
|
// Required to access data from Nasdaq
|
|
// To get your access token go to https://data.nasdaq.com/account/profile
|
|
"nasdaq-auth-token": "",
|
|
|
|
// Required to access data from Tiingo
|
|
// To get your access token go to https://www.tiingo.com
|
|
"tiingo-auth-token": "",
|
|
|
|
// Required to access data from US Energy Information Administration
|
|
// To get your access token go to https://www.eia.gov/opendata
|
|
"us-energy-information-auth-token": "",
|
|
|
|
// Required for IEX history requests
|
|
"iex-cloud-api-key": "",
|
|
|
|
// Required for market data from Coin API
|
|
"coinapi-api-key": "",
|
|
"coinapi-product": "free", // free, startup, streamer, professional, enterprise
|
|
|
|
// Required for streaming Polygon.io data
|
|
// To get your access token go to https://polygon.io
|
|
"polygon-api-key": "",
|
|
|
|
// zerodha configuration goto https://kite.trade
|
|
"zerodha-access-token": "",
|
|
"zerodha-api-key": "",
|
|
"zerodha-product-type": "MIS", //MIS(Intraday) or CNC(Delivery) or NRML(Carry Forward)
|
|
"zerodha-trading-segment": "EQUITY", // EQUITY(NSE,BSE) or COMMODITY (MCX)
|
|
"zerodha-history-subscription": "false", // "true" if History API Subscription available
|
|
|
|
//samco configuration go to https://www.samco.in/stocknote-api
|
|
"samco-client-id": "",
|
|
"samco-client-password": "",
|
|
"samco-year-of-birth": "",
|
|
"samco-product-type": "MIS", //MIS(Intraday) or CNC(Delivery) or NRML(Carry Forward)
|
|
"samco-trading-segment": "EQUITY", // EQUITY(NSE,BSE) or COMMODITY (MCX)
|
|
|
|
// FTX configuration
|
|
"ftx-account-tier": "Tier1", // accept "Tier1", "Tier2", "Tier3", "Tier4", "Tier5", "Tier6", "VIP1", "VIP2", "VIP3", "MM1", "MM2", "MM3"
|
|
"ftx-api-secret": "",
|
|
"ftx-api-key": "",
|
|
|
|
// FTX.US configuration
|
|
"ftxus-account-tier": "Tier1", // accept "Tier1", "Tier2", "Tier3", "Tier4", "Tier5", "Tier6", "Tier7", "Tier8", "Tier9", "VIP1", "VIP2", "MM1", "MM2", "MM3"
|
|
"ftxus-api-secret": "",
|
|
"ftxus-api-key": "",
|
|
|
|
// parameters to set in the algorithm (the below are just samples)
|
|
"parameters": {
|
|
// Intrinio account user and password
|
|
"intrinio-username": "",
|
|
"intrinio-password": "",
|
|
|
|
"ema-fast": 10,
|
|
"ema-slow": 20
|
|
},
|
|
|
|
// specify supported languages when running regression tests
|
|
"regression-test-languages": [ "CSharp", "Python" ],
|
|
|
|
// Additional paths to include in python for import resolution
|
|
"python-additional-paths": [],
|
|
|
|
"environments": {
|
|
|
|
// defines the 'backtesting' environment
|
|
"backtesting": {
|
|
"live-mode": false,
|
|
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BacktestingSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.BacktestingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.FileSystemDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.BacktestingRealTimeHandler",
|
|
"history-provider": [ "QuantConnect.Lean.Engine.HistoricalData.SubscriptionDataReaderHistoryProvider" ],
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BacktestingTransactionHandler"
|
|
},
|
|
|
|
// defines the 'live-paper' environment
|
|
"live-paper": {
|
|
"live-mode": true,
|
|
|
|
// the paper brokerage requires the BacktestingTransactionHandler
|
|
"live-mode-brokerage": "PaperBrokerage",
|
|
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"data-queue-handler": [ "QuantConnect.Lean.Engine.DataFeeds.Queues.LiveDataQueue" ],
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BacktestingTransactionHandler"
|
|
},
|
|
|
|
// defines 'live-zerodha' environment
|
|
"live-zerodha": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "ZerodhaBrokerage",
|
|
"data-queue-handler": [ "ZerodhaBrokerage" ],
|
|
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines 'live-samco' environment
|
|
"live-samco": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "SamcoBrokerage",
|
|
"data-queue-handler": [ "SamcoBrokerage" ],
|
|
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-tradier' environment
|
|
"live-tradier": {
|
|
"live-mode": true,
|
|
|
|
// this setting will save tradier access/refresh tokens to a tradier-tokens.txt file
|
|
// that can be read in next time, this makes it easier to start/stop a tradier algorithm
|
|
"tradier-save-tokens": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "TradierBrokerage",
|
|
"data-queue-handler": [ "TradierBrokerage" ],
|
|
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-interactive' environment
|
|
"live-interactive": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "InteractiveBrokersBrokerage",
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"data-queue-handler": [ "InteractiveBrokersBrokerage" ],
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-interactive-iqfeed' environment
|
|
"live-interactive-iqfeed": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "InteractiveBrokersBrokerage",
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"data-queue-handler": [ "QuantConnect.IQFeed.IQFeedDataQueueHandler" ],
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "QuantConnect.IQFeed.IQFeedDataQueueHandler", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-fxcm' environment
|
|
"live-fxcm": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "FxcmBrokerage",
|
|
"data-queue-handler": [ "FxcmBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-oanda' environment
|
|
"live-oanda": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "OandaBrokerage",
|
|
"data-queue-handler": [ "OandaBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-coinbase": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "CoinbaseBrokerage",
|
|
"data-queue-handler": [ "CoinbaseBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-bitfinex": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "BitfinexBrokerage",
|
|
"data-queue-handler": [ "BitfinexBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-binance": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "BinanceBrokerage",
|
|
"data-queue-handler": [ "BinanceBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-futures-binance": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "BinanceFuturesBrokerage",
|
|
"data-queue-handler": [ "BinanceFuturesBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-coin-futures-binance": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "BinanceCoinFuturesBrokerage",
|
|
"data-queue-handler": [ "BinanceCoinFuturesBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-binanceus": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "BinanceUSBrokerage",
|
|
"data-queue-handler": [ "BinanceUSBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-bybit": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "BybitBrokerage",
|
|
"data-queue-handler": [ "BybitBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-trade-station": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "TradeStationBrokerage",
|
|
"data-queue-handler": [ "TradeStationBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-alpaca": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "AlpacaBrokerage",
|
|
"data-queue-handler": [ "AlpacaBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-futures-bybit": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "BybitFuturesBrokerage",
|
|
"data-queue-handler": [ "BybitFuturesBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-trading-technologies' environment
|
|
"live-trading-technologies": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "TradingTechnologiesBrokerage",
|
|
"data-queue-handler": [ "TradingTechnologiesBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler"
|
|
},
|
|
|
|
// defines the 'live-kraken' environment
|
|
"live-kraken": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "KrakenBrokerage",
|
|
"data-queue-handler": [ "KrakenBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-ftx' environment
|
|
"live-ftx": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "QuantConnect.FTXBrokerage.FTXBrokerage",
|
|
"data-queue-handler": [ "QuantConnect.FTXBrokerage.FTXBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-exante": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "QuantConnect.ExanteBrokerage.ExanteBrokerage",
|
|
"data-queue-handler": [ "QuantConnect.ExanteBrokerage.ExanteBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": "BrokerageHistoryProvider"
|
|
},
|
|
|
|
// defines the 'live-ftxus' environment
|
|
"live-ftxus": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "QuantConnect.FTXBrokerage.FTXUSBrokerage",
|
|
"data-queue-handler": [ "QuantConnect.FTXBrokerage.FTXUSBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-wolverine": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "WolverineBrokerage",
|
|
"history-provider": [ "SubscriptionDataReaderHistoryProvider" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler"
|
|
},
|
|
|
|
"live-charlesschwab": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "CharlesSchwabBrokerage",
|
|
"data-queue-handler": [ "CharlesSchwabBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-tastytrade": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "TastytradeBrokerage",
|
|
"data-queue-handler": [ "TastytradeBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
"live-rbi": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "RBIBrokerage",
|
|
"data-queue-handler": [ "QuantConnect.Lean.Engine.DataFeeds.Queues.LiveDataQueue" ],
|
|
"history-provider": [ "SubscriptionDataReaderHistoryProvider" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler"
|
|
},
|
|
|
|
// defines the 'live-eze' environment
|
|
"live-eze": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "QuantConnect.EzeBrokerage.EzeBrokerage",
|
|
"data-queue-handler": [ "QuantConnect.EzeBrokerage.EzeBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-webull' environment
|
|
"live-webull": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "WebullBrokerage",
|
|
"data-queue-handler": [ "WebullBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-public' environment
|
|
"live-public": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "PublicBrokerage",
|
|
"data-queue-handler": [ "PublicBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
},
|
|
|
|
// defines the 'live-dydx' environment
|
|
"live-dydx": {
|
|
"live-mode": true,
|
|
|
|
// real brokerage implementations require the BrokerageTransactionHandler
|
|
"live-mode-brokerage": "dYdXBrokerage",
|
|
"data-queue-handler": [ "dYdXBrokerage" ],
|
|
"setup-handler": "QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler",
|
|
"result-handler": "QuantConnect.Lean.Engine.Results.LiveTradingResultHandler",
|
|
"data-feed-handler": "QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed",
|
|
"real-time-handler": "QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler",
|
|
"transaction-handler": "QuantConnect.Lean.Engine.TransactionHandlers.BrokerageTransactionHandler",
|
|
"history-provider": [ "BrokerageHistoryProvider", "SubscriptionDataReaderHistoryProvider" ]
|
|
}
|
|
}
|
|
} |