PINE LIBRARY
Cập nhật PineTradingbotWebhook

Library "PineTradingbotWebhook"
makeWebhookJson(webhookKey, direction, qty, entryLimit, entryStop, exitLimit, exitStop, orderRef, contract)
Creates a Webhook message for Tbot on Tradingboat
Parameters:
webhookKey: the unique key to the Flask (TVWB) server
direction: the same as the strategy's direction
qty
entryLimit
entryStop
exitLimit
exitStop
orderRef
contract
Returns: JSON as a string
makeWebhookJson(webhookKey, direction, qty, entryLimit, entryStop, exitLimit, exitStop, orderRef, contract)
Creates a Webhook message for Tbot on Tradingboat
Parameters:
webhookKey: the unique key to the Flask (TVWB) server
direction: the same as the strategy's direction
qty
entryLimit
entryStop
exitLimit
exitStop
orderRef
contract
Returns: JSON as a string
Phát hành các Ghi chú
v2:update the "qty" argument from a "simple float" to a "series float"
Phát hành các Ghi chú
v3Updated:
- Update PineScript library to send a single client ID for multiple Redis pub actions
Phát hành các Ghi chú
v4Updated:
"Revised makeWebhookJson function to use -1e10 as a special value for the qty parameter to indicate all contracts/units should be exited. Added comment to code to explain the special value."
Phát hành các Ghi chú
v5This update includes the addition of a detailed description for function parameters.
Allow me to clarify the purpose of this library.
The library generates webhook messages in JSON format.
The following is an example of the JSON message format:
----------------------------------------------------------------------------------
{
"timestamp": 1645630199,
"ticker": "AAPL",
"currency": "USD",
"timeframe": "1D",
"key": "WebhookReceived:123456",
"contract": "stock",
"orderRef": "long#1",
"direction": "strategy.long",
"clientId": 1,
"metrics": [
{
"name": "entry.stop",
"value": 130.0
},
{
"name": "entry.limit",
"value": 0.0
},
{
"name": "exit.limit",
"value": 150.0
},
{
"name": "exit.stop",
"value": 100.0
}
]
}
----------------------------------------------------------------------------------
The webhook message can be received by a web server. An example of such a server is provided below.
The web server is based on Flask and TVWB.
It can push Redis messages to individual Redis Streams per Interactive Broker clientID,
as well as fetch order information and display it in web browsers.
Here is the link to the GitHub repository for the tradingview-webhooks-bot:
github.com/PlusGenie/tradingview-webhooks-bot
Phát hành các Ghi chú
v6This patch replaces string concatenation with the str.format() function for better readability and performance
Phát hành các Ghi chú
v7Updated: Rearrange the function signature parameter order
makeWebhookJson(webhookKey, orderRef, direction, qty, entryLimit, entryStop, exitLimit, exitStop, contract, clientId)
Creates a Webhook message for Tbot on Tradingboat
Parameters:
webhookKey (simple string): the unique key to the Flask (TVWB) server - // Use format like WebhookReceived:123456
orderRef (simple string): this will be used to create the order reference ID, together with timeframe and clientID
direction (simple string): the same as the strategy's direction - strategy.entrylong, strategy.entryshort, strategy.exitlong, strategy.exitshort, strategy.close, strategy.close_all
qty (float): default value is -1e10 indicating all contracts/units
entryLimit (float): this is same to strategy.entry()'s limit parameter
entryStop (float): this is same to strategy.entry()'s stop parameter
exitLimit (float): this is the same to strategy.exit()'s limit parameter
exitStop (float): this is the same to strategy.exit()'s stop parameter
contract (simple string): this will be translated to secType in ib insync. stock, forex, crypto
clientId (int): this is for IB Gateway/TWS's clientID which should start with 1
Returns: JSON as a series string
Phát hành các Ghi chú
v8Updated: The library has been updated to include support for Futures.
makeWebhookJson(webhookKey, orderRef, direction, qty, entryLimit, entryStop, exitLimit, exitStop, contract, exchange, lastTradeDateOrContractMonth, clientId)
Creates a Webhook message for Tbot on Tradingboat
Parameters:
webhookKey (simple string): the unique key to the Flask (TVWB) server - // Use format like WebhookReceived:123456
orderRef (simple string): this will be used to create the order reference ID, together with timeframe and clientID
direction (simple string): the same as the strategy's direction - strategy.entrylong, strategy.entryshort, strategy.exitlong, strategy.exitshort, strategy.close, strategy.close_all
qty (float): default value is -1e10 indicating all contracts/units
entryLimit (float): this is same to strategy.entry()'s limit parameter
entryStop (float): this is same to strategy.entry()'s stop parameter
exitLimit (float): this is the same to strategy.exit()'s limit parameter
exitStop (float): this is the same to strategy.exit()'s stop parameter
contract (simple string): this will be translated to secType in ib_insync. stock, forex, crypto and future(s)
exchange (simple string): Destination exchange for ib_insync, primarily for futures.
lastTradeDateOrContractMonth (simple string): The contract's last trading day or contract month for ib_insync, mainly for futures. Should be in the format YYYYMM or YYYYMMDD.
clientId (int): this is for IB Gateway/TWS's clientID which should start with 1
Returns: JSON as a series string
Phát hành các Ghi chú
v9Updated:
Added 'ticker' parameter in PineTradingbotWebhook library
- Enhanced the makeWebhookJson function with a new 'ticker' parameter
- Ensured compatibility with different symbol formats in TradingView and ib_insync
- Provided default behavior to use current chart's ticker if 'ticker' parameter is not specified
- Updated function documentation to include the new parameter description
Phát hành các Ghi chú
v10Updated:
makeWebhookJson(webhookKey, orderRef, direction, qty, entryLimit, entryStop, exitLimit, exitStop, contract, ticker, lastTradeDateOrContractMonth, exchange, multiplier, clientId)
Creates a Webhook message for Tbot on Tradingboat
Parameters:
webhookKey (simple string): the unique key to the Flask (TVWB) server - // Use format like WebhookReceived:123456
orderRef (simple string): this will be used to create the order reference ID, together with timeframe and clientID
direction (simple string): the same as the strategy's direction - strategy.entrylong, strategy.entryshort, strategy.exitlong, strategy.exitshort, strategy.close, strategy.close_all
qty (float): default value is -1e10 indicating all contracts/units
entryLimit (float): this is same to strategy.entry()'s limit parameter
entryStop (float): this is same to strategy.entry()'s stop parameter
exitLimit (float): this is the same to strategy.exit()'s limit parameter
exitStop (float): this is the same to strategy.exit()'s stop parameter
contract (simple string): this will be translated to secType in ib_insync. stock, forex, crypto and future(s)
ticker (simple string): The TradingView ticker symbol for the asset; defaults to the current chart's ticker if not specified.
lastTradeDateOrContractMonth (simple string): The contract's last trading day or contract month for ib_insync, mainly for futures. Should be in the format YYYYMM or YYYYMMDD.
exchange (simple string): Destination exchange for ib_insync, primarily for futures.
multiplier (simple string): The futures contract multiplier is the amount multiplying the price per point to determine total value.
clientId (int): this is for IB Gateway/TWS's clientID which should start with 1
Returns: JSON as a series string
Thư viện Pine
Theo đúng tinh thần TradingView, tác giả đã công bố mã Pine này như một thư viện mã nguồn mở để các lập trình viên Pine khác trong cộng đồng có thể tái sử dụng. Chúc mừng tác giả! Bạn có thể sử dụng thư viện này cho mục đích cá nhân hoặc trong các ấn phẩm mã nguồn mở khác, nhưng việc tái sử dụng mã này trong các ấn phẩm phải tuân theo Nội Quy.
Thông báo miễn trừ trách nhiệm
Thông tin và các ấn phẩm này không nhằm mục đích, và không cấu thành, lời khuyên hoặc khuyến nghị về tài chính, đầu tư, giao dịch hay các loại khác do TradingView cung cấp hoặc xác nhận. Đọc thêm tại Điều khoản Sử dụng.
Thư viện Pine
Theo đúng tinh thần TradingView, tác giả đã công bố mã Pine này như một thư viện mã nguồn mở để các lập trình viên Pine khác trong cộng đồng có thể tái sử dụng. Chúc mừng tác giả! Bạn có thể sử dụng thư viện này cho mục đích cá nhân hoặc trong các ấn phẩm mã nguồn mở khác, nhưng việc tái sử dụng mã này trong các ấn phẩm phải tuân theo Nội Quy.
Thông báo miễn trừ trách nhiệm
Thông tin và các ấn phẩm này không nhằm mục đích, và không cấu thành, lời khuyên hoặc khuyến nghị về tài chính, đầu tư, giao dịch hay các loại khác do TradingView cung cấp hoặc xác nhận. Đọc thêm tại Điều khoản Sử dụng.