TradersPost WebhookMessage Library - Automatically Build JSON

Library "WebhookMessage"
The webhook message library provides several functions for building JSON payloads
used as instructions to manage automated orders and positions with See:

For example, build a message that goes long 1 contract with a trailing stop of 0.75% sent to the broker:

import TradersPostInc/WebhookMessage/1 as wm
cnst =
msg =
ticker = syminfo.ticker,
action = cnst.ACTION_BUY,
sentiment = cnst.SENTIMENT_BULLISH,
quantity = 1,
stopLoss = = cnst.STOP_LOSS_TYPE_TRAILING_STOP, trailPercent = 0.75).buildStopLossJson()

Remember, that each use of a type needs to be translated into a JSON string using the build*Json() method. There are three types and three relevant build methods:
webhookMessage uses buildWebhookJson()
takeProfitMessage uses buildTakeProfitJson()
stopLossMessage uses buildStopLossJson()

Each time you instantiate a new message type, you'll need to chain the build method to it.

method buildWebhookJson(msg)
  Builds the final JSON payload from a webhookMessage type.
  Namespace types: webhookMessage
    msg (webhookMessage)
  Returns: <string> A JSON Payload.

method buildTakeProfitJson(msg)
  Builds the takeProfit JSON message to be used in a webhook message.
  Namespace types: takeProfitMessage
    msg (takeProfitMessage)
  Returns: <string> A JSON takeProfit payload.

method buildStopLossJson(msg)
  Builds the stopLoss JSON message to be used in a webhook message.
  Namespace types: stopLossMessage
    msg (stopLossMessage)
  Returns: <string> A JSON stopLoss payload.

  Constants for payload values.
    ACTION_BUY (series string)
    ACTION_SELL (series string)
    ACTION_EXIT (series string)
    ACTION_CANCEL (series string)
    ACTION_ADD (series string)
    SENTIMENT_BULLISH (series string)
    SENTIMENT_BEARISH (series string)
    SENTIMENT_LONG (series string)
    SENTIMENT_SHORT (series string)
    SENTIMENT_FLAT (series string)
    STOP_LOSS_TYPE_STOP (series string)
    STOP_LOSS_TYPE_STOP_LIMIT (series string)
    STOP_LOSS_TYPE_TRAILING_STOP (series string)

  Final webhook message. See:
    ticker (series string)
    action (series string)
    sentiment (series string)
    price (series float)
    quantity (series int)
    takeProfit (series string)
    stopLoss (series string)

  Take profit message. See:
    limitPrice (series float)
    percent (series float)
    amount (series float)

  Stop loss message. See:
    type (series string)
    percent (series float)
    amount (series float)
    stopPrice (series float)
    limitPrice (series float)
    trailPrice (series float)
    trailPercent (series float)

Pine library

In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in a publication is governed by House Rules.


The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this library?

Copy the following line and paste it in your script.