PINE LIBRARY

Commission-aware Trade Labels

已更新
Commission-aware Trade Labels

Description:
This library provides an easy way to visualize take-profit and stop-loss levels on your chart, taking into account trading commissions. The library calculates and displays the net profit or loss, along with other useful information such as risk/reward ratio, shares, and position size.

Features:
Configurable take-profit and stop-loss prices or percentages.
Set entry amount or shares.
Calculates and displays the risk/reward ratio.
Shows net profit or loss, considering trading commissions.
Customizable label appearance.

Usage:
Add the script to your chart.
Create an Order object for take-profit and stop-loss with desired configurations.
Call target_label() and stop_label() methods for each order object.

Example:
target_order = Order.new(take_profit_price=27483, stop_loss_price=28000, shares=0.2)
stop_order = Order.new(stop_loss_price=29000, shares=1)
target_order.target_label()
stop_order.stop_label()

This script is a powerful tool for visualizing your trading strategy's performance and helps you make better-informed decisions by considering trading commissions in your profit and loss calculations.

Library "tradelabels"

entry_price(this)
  Parameters:
    this: Order object
return entry_price

take_profit_price(this)
  Parameters:
    this: Order object
return take_profit_price

stop_loss_price(this)
  Parameters:
    this: Order object
return stop_loss_price

is_long(this)
  Parameters:
    this: Order object
return entry_price

is_short(this)
  Parameters:
    this: Order object
return entry_price

percent_to_target(this, target)
  Parameters:
    this: Order object
    target: Target price
return percent

risk_reward(this)
  Parameters:
    this: Order object
return risk_reward_ratio

shares(this)
  Parameters:
    this: Order object
return shares

position_size(this)
  Parameters:
    this: Order object
return position_size

commission_cost(this, target_price)
  Parameters:
    this: Order object
return commission_cost
    target_price

net_result(this, target_price)
  Parameters:
    this: Order object
    target_price: The target price to calculate net result for (either take_profit_price or stop_loss_price)
return net_result

create_take_profit_label(this, prefix, size, offset_x, bg_color, text_color)
  Parameters:
    this
    prefix
    size
    offset_x
    bg_color
    text_color

create_stop_loss_label(this, prefix, size, offset_x, bg_color, text_color)
  Parameters:
    this
    prefix
    size
    offset_x
    bg_color
    text_color

create_entry_label(this, prefix, size, offset_x, bg_color, text_color)
  Parameters:
    this
    prefix
    size
    offset_x
    bg_color
    text_color

create_line(this, target_price, line_color, offset_x, line_style, line_width, draw_entry_line)
  Parameters:
    this
    target_price
    line_color
    offset_x
    line_style
    line_width
    draw_entry_line

Order
  Order
  Fields:
    entry_price: Entry price
    stop_loss_price: Stop loss price
    stop_loss_percent: Stop loss percent, default 2%
    take_profit_price: Take profit price
    take_profit_percent: Take profit percent, default 6%
    entry_amount: Entry amount, default 5000$
    shares: Shares
    commission: Commission, default 0.04%
版本注释
v2

Updated:
method create_take_profit_label(this, simulate, prefix, size, offset_x, bg_color, text_color)
  Namespace types: Order
  Parameters:
    this (Order)
    simulate (bool)
    prefix (string)
    size (string)
    offset_x (simple int)
    bg_color (color)
    text_color (color)

method create_stop_loss_label(this, simulate, prefix, size, offset_x, bg_color, text_color)
  Namespace types: Order
  Parameters:
    this (Order)
    simulate (bool)
    prefix (string)
    size (string)
    offset_x (simple int)
    bg_color (color)
    text_color (color)

method create_entry_label(this, simulate, prefix, size, offset_x, bg_color, text_color)
  Namespace types: Order
  Parameters:
    this (Order)
    simulate (bool)
    prefix (string)
    size (string)
    offset_x (simple int)
    bg_color (color)
    text_color (color)
版本注释
v3

Updated:
Order
  Order
  Fields:
    entry_price (series float): Entry price
    stop_loss_price (series float): Stop loss price
    stop_loss_percent (series float): Stop loss percent, default 2%
    take_profit_price (series float): Take profit price
    take_profit_percent (series float): Take profit percent, default 6%
    entry_amount (series float): Entry amount, default 5000$
    shares (series float): Shares
    commission (series float): Commission, default 0.04%
    risk_reward_ratio (series float)
版本注释
v4
版本注释
v5

Updated:
method position_size(this, percent)
  Namespace types: Order
  Parameters:
    this (Order): Order object
    percent (float): The percentage of the total position size to calculate
return position_size

method commission_cost(this, target_price, shares)
  Namespace types: Order
  Parameters:
    this (Order): Order object
    target_price (float): The target price used for commission calculation
    shares (float): The number of shares involved in the transaction
return commission_cost

method net_result(this, target_price, percent)
  Namespace types: Order
  Parameters:
    this (Order): Order object
    target_price (float): The target price to calculate net result for (either take_profit_price or stop_loss_price)
    percent (float): The percentage of the position to calculate the net result for
return net_result

method create_take_profit_label(this, simulate, prefix, size, offset_x, bg_color, text_color, tp_percent)
  Namespace types: Order
  Parameters:
    this (Order)
    simulate (bool)
    prefix (string)
    size (string)
    offset_x (simple int)
    bg_color (color)
    text_color (color)
    tp_percent (float)

method create_stop_loss_label(this, simulate, prefix, size, offset_x, bg_color, text_color, sl_percent)
  Namespace types: Order
  Parameters:
    this (Order)
    simulate (bool)
    prefix (string)
    size (string)
    offset_x (simple int)
    bg_color (color)
    text_color (color)
    sl_percent (float)

Order
  Order
  Fields:
    entry_price (series float): Entry price
    stop_loss_price (series float): Stop loss price
    stop_loss_percent (series float): Stop loss percent, default 2%
    take_profit_price (series float): Take profit price
    take_profit_percent (series float): Take profit percent, default 6%
    entry_amount (series float): Entry amount, default 5000$
    shares (series float): Shares
    commission (series float): Commission, default 0.04%
版本注释
v6

Updated:
Order
  Order
  Fields:
    entry_price (series float): Entry price
    stop_loss_price (series float): Stop loss price
    stop_loss_percent (series float): Stop loss percent, default 2%
    take_profit_price (series float): Take profit price
    take_profit_percent (series float): Take profit percent, default 6%
    entry_amount (series float): Entry amount, default 5000$
    shares (series float): Shares
    commission (series float): Commission, default 0.04%
    risk_reward_ratio (series float)
calculatordisplaypositionsizepositionsizecalculatorprofitstatisticsstoplosstechindicator

Pine脚本库

本着真正的TradingView精神,作者将此Pine代码发布为开源脚本库,以便我们社区的其他Pine程序员可以重复使用它。向作者致敬!您可以私下或在其它开源出版物中使用此脚本库,但在出版物中重复使用此代码受网站规则约束。

免责声明