PINE LIBRARY

SAT_BACKTEST @description TODO: Regroupement of useful functions

Cập nhật
Library "SAT_BACKTEST"

ex_timezone(tz)
  switch case return exact timezone for timezone input
  Parameters:
    tz (simple string)
  Returns: syminfo.timezone or tz

if_in_date_range(usefromDate, fromDate, usetoDate, toDate, src_timezone, dst_timezone)
  if_in_date_range : check if @time_close is range [fromDate, toDate]
  Parameters:
    usefromDate (simple bool)
    fromDate (simple int)
    usetoDate (simple bool)
    toDate (simple int)
    src_timezone (simple string)
    dst_timezone (simple string)
  Returns: true if @time_close is range [fromDate, toDate]

if_in_session(useSessionStart, sessionStartHour, sessionStartMinute, useSessionEnd, sessionEndHour, sessionEndMinute, useSessionDay, mon, tue, wed, thu, fri, sat, sun, src_timezone, dst_timezone)
  if_in_session : check if @time_close is range [(sessionStartHour, sessionStartMinute), (sessionEndHour, sessionEndMinute)]
  Parameters:
    useSessionStart (simple bool)
    sessionStartHour (simple int)
    sessionStartMinute (simple int)
    useSessionEnd (simple bool)
    sessionEndHour (simple int)
    sessionEndMinute (simple int)
    useSessionDay (simple bool)
    mon (simple bool)
    tue (simple bool)
    wed (simple bool)
    thu (simple bool)
    fri (simple bool)
    sat (simple bool)
    sun (simple bool)
    src_timezone (simple string)
    dst_timezone (simple string)
  Returns: true if @time_close is range [(sessionStartHour, sessionStartMinute), (sessionEndHour, sessionEndMinute)]
Phát hành các Ghi chú
v2

Added:
CheckLevels(lvl, entry, isTake, inLong, inShort, inTrade)
  if_in_session : Check if the SL/TP is reached
  Parameters:
    lvl (float)
    entry (float)
    isTake (bool)
    inLong (bool)
    inShort (bool)
    inTrade (bool)
  Returns: float level
Phát hành các Ghi chú
v3

Added:
CheckLevels2(lvl, isTake, inLong, inShort, inTrade)
  if_in_session : Check if the SL/TP is reached
  Parameters:
    lvl (float)
    isTake (bool)
    inLong (bool)
    inShort (bool)
    inTrade (bool)
  Returns: bool achievement_status
Phát hành các Ghi chú
v4

Added:
strategy_table(showTable, showHodl)
  if strategy return table strategy table
  Parameters:
    showTable (bool)
    showHodl (bool)
  Returns: table strategy table
Phát hành các Ghi chú
v5

Updated:
strategy_table(showTable, darkTheme)
  if strategy return table strategy table
  Parameters:
    showTable (bool)
    darkTheme (bool)
  Returns: table strategy table
Phát hành các Ghi chú
v6
Phát hành các Ghi chú
v7

Added:
quick_tp_check(goLong, goShort, entry, tp1x, tp2x, tp3x, tp4x, tp5x, tp6x, slx)
  Track TakeProfits and StopLoss achievement for one or many of your buy/sell conditions. CHECK the commented section: "Function managetrade" (lines: 14 - 64) for Description
  Parameters:
    goLong (bool)
    goShort (bool)
    entry (float)
    tp1x (float)
    tp2x (float)
    tp3x (float)
    tp4x (float)
    tp5x (float)
    tp6x (float)
    slx (float)
  Returns: TP_achievment status for 6 tps: [uno_hit,dos_hit, tres_hit, quatro_hit, cinco_hit, six_hit, stop_hit]
Phát hành các Ghi chú
v8

Added:
plot_tpz(darkTheme, useSignal, inLong, inShort, TP1_touched, TP2_touched, TP3_touched, TP4_touched, TP5_touched, TP6_touched, SL_touched)
  Track TakeProfits and StopLoss achievement for one or many of your buy/sell conditions. CHECK the commented section: "Function managetrade" (lines: 14 - 64) for Description
  Parameters:
    darkTheme (bool)
    useSignal (bool)
    inLong (bool)
    inShort (bool)
    TP1_touched (bool)
    TP2_touched (bool)
    TP3_touched (bool)
    TP4_touched (bool)
    TP5_touched (bool)
    TP6_touched (bool)
    SL_touched (bool)
  Returns: check commented section: "Function managetrade" (lines: 14 - 64).
Phát hành các Ghi chú
v9

Added:
TP_SL_math(tpType, useTp2, useTp3, useTp4, useTp5, useTp6, rr_pt, reward, tp1x, tp2x, tp3x, tp4x, tp5x, tp6x, slr)
  TP_SL_MATH
  Parameters:
    tpType (string)
    useTp2 (bool)
    useTp3 (bool)
    useTp4 (bool)
    useTp5 (bool)
    useTp6 (bool)
    rr_pt (float)
    reward (float)
    tp1x (float)
    tp2x (float)
    tp3x (float)
    tp4x (float)
    tp5x (float)
    tp6x (float)
    slr (float)
  Returns: PLOTS

Updated:
plot_tpz(darkTheme, useSignal, inLong, inShort, TP1_touched, TP2_touched, TP3_touched, TP4_touched, TP5_touched, TP6_touched, SL_touched)
  Plots TakeProfits and StopLoss achievement
  Parameters:
    darkTheme (bool)
    useSignal (bool)
    inLong (bool)
    inShort (bool)
    TP1_touched (bool)
    TP2_touched (bool)
    TP3_touched (bool)
    TP4_touched (bool)
    TP5_touched (bool)
    TP6_touched (bool)
    SL_touched (bool)
  Returns: PLOTS
Phát hành các Ghi chú
v10
Phát hành các Ghi chú
v11
Phát hành các Ghi chú
v12
Phát hành các Ghi chú
v13

Added:
exit_strategy(exit_strategy, inTrade, ID, entry1, tp1, tp2, tp3, tp4, tp5, sl, tp1y, tp2y, tp3y, tp4y, tp5y, tp6y, tp1_hit, tp2_hit, tp3_hit, tp4_hit, tp5_hit, tp6_hit, tp1_touched, tp2_touched, tp3_touched, tp4_touched, tp5_touched, tp6_touched, inShort, inLong)
  TP_SL_MATH
  Parameters:
    exit_strategy (string)
    inTrade (bool)
    ID (string)
    entry1 (float)
    tp1 (float)
    tp2 (float)
    tp3 (float)
    tp4 (float)
    tp5 (float)
    sl (float)
    tp1y (float)
    tp2y (float)
    tp3y (float)
    tp4y (float)
    tp5y (float)
    tp6y (float)
    tp1_hit (bool)
    tp2_hit (bool)
    tp3_hit (bool)
    tp4_hit (bool)
    tp5_hit (bool)
    tp6_hit (bool)
    tp1_touched (bool)
    tp2_touched (bool)
    tp3_touched (bool)
    tp4_touched (bool)
    tp5_touched (bool)
    tp6_touched (bool)
    inShort (bool)
    inLong (bool)
  Returns: PLOTS STRATEGY ACTIONS
Phát hành các Ghi chú
v14

Updated:
plot_tpz(ID, darkTheme, useSignal, inLong, inShort, TP1_touched, TP2_touched, TP3_touched, TP4_touched, TP5_touched, TP6_touched, SL_touched)
  Plots TakeProfits and StopLoss achievement
  Parameters:
    ID (string)
    darkTheme (bool)
    useSignal (bool)
    inLong (bool)
    inShort (bool)
    TP1_touched (bool)
    TP2_touched (bool)
    TP3_touched (bool)
    TP4_touched (bool)
    TP5_touched (bool)
    TP6_touched (bool)
    SL_touched (bool)
  Returns: PLOTS
Phát hành các Ghi chú
v15
Phát hành các Ghi chú
v16

Updated:
plot_tpz(darkTheme, useSignal, inLong, inShort, TP1_touched, TP2_touched, TP3_touched, TP4_touched, TP5_touched, TP6_touched, SL_touched)
  Plots TakeProfits and StopLoss achievement
  Parameters:
    darkTheme (bool)
    useSignal (bool)
    inLong (bool)
    inShort (bool)
    TP1_touched (bool)
    TP2_touched (bool)
    TP3_touched (bool)
    TP4_touched (bool)
    TP5_touched (bool)
    TP6_touched (bool)
    SL_touched (bool)
  Returns: PLOTS
Phát hành các Ghi chú
v17

Added:
Draw_Session_Switch_candle(colorSess, route_cond, newDaySession, newsessionPerc, separateDays, Day_Bg, route_color2, retxt_color, low_route, high_route, dailyLow, dailyHigh)
  Draw_Session_Switch_candle is designed to draw session switch indicators on a chart.
  Parameters:
    colorSess (bool)
    route_cond (bool)
    newDaySession (bool)
    newsessionPerc (float)
    separateDays (bool)
    Day_Bg (color)
    route_color2 (color)
    retxt_color (string)
    low_route (float)
    high_route (float)
    dailyLow (float)
    dailyHigh (float)
Phát hành các Ghi chú
v18

Updated:
quick_tp_check(goLong, goShort, entry, tp1, tp2, tp3, tp4, tp5, tp6, sl)
  Track TakeProfits and StopLoss achievement for one or many of your buy/sell conditions. CHECK the commented section: "Function managetrade" (lines: 14 - 64) for Description
  Parameters:
    goLong (bool)
    goShort (bool)
    entry (float)
    tp1 (float)
    tp2 (float)
    tp3 (float)
    tp4 (float)
    tp5 (float)
    tp6 (float)
    sl (float)
  Returns: TP_achievment status for 6 tps: [trade_started, tp1_touched, tp2_touched, tp3_touched, tp4_touched, tp5_touched, tp6_touched, sl_touched, entry_hit, tp1_hit, tp2_hit, tp3_hit, tp4_hit, tp5_hit, tp6_hit]
Phát hành các Ghi chú
v19
Phát hành các Ghi chú
v20
Phát hành các Ghi chú
v21

Removed:
quick_tp_check(goLong, goShort, entry, tp1, tp2, tp3, tp4, tp5, tp6, sl)
  Track TakeProfits and StopLoss achievement for one or many of your buy/sell conditions. CHECK the commented section: "Function managetrade" (lines: 14 - 64) for Description
Phát hành các Ghi chú
v22
Phát hành các Ghi chú
v23
Phát hành các Ghi chú
v24

Added:
quick_tp_check(goLong, goShort, entry, tp1, tp2, tp3, tp4, tp5, tp6, sl)
  Track TakeProfits and StopLoss achievement for one or many of your buy/sell conditions. CHECK the commented section: "Function managetrade" (lines: 14 - 64) for Description
  Parameters:
    goLong (bool)
    goShort (bool)
    entry (float)
    tp1 (float)
    tp2 (float)
    tp3 (float)
    tp4 (float)
    tp5 (float)
    tp6 (float)
    sl (float)
  Returns: TP_achievment status for 6 tps: [trade_started, tp1_touched, tp2_touched, tp3_touched, tp4_touched, tp5_touched, tp6_touched, sl_touched, entry_hit, tp1_hit, tp2_hit, tp3_hit, tp4_hit, tp5_hit, tp6_hit]
Phát hành các Ghi chú
v25

Updated:
Draw_Session_Switch_candle(colorSess, route_cond, newDaySession, newsessionPerc, separateDays, Day_Bg, route_color2, retxt_color, low_route, high_route, dailyLow, dailyHigh, linewidth_nwday, linewidth_nwsessCande)
  Draw_Session_Switch_candle is designed to draw session switch indicators on a chart.
  Parameters:
    colorSess (bool)
    route_cond (bool)
    newDaySession (bool)
    newsessionPerc (float)
    separateDays (bool)
    Day_Bg (color)
    route_color2 (color)
    retxt_color (string)
    low_route (float)
    high_route (float)
    dailyLow (float)
    dailyHigh (float)
    linewidth_nwday (int)
    linewidth_nwsessCande (int)
Phát hành các Ghi chú
v26

Added:
calculateExpectedGrowth(riskRewardRatio, winRate, riskPerTrade, tradesPerDay, tradingDaysPerMonth)
  Expected Growth Calculation
  Parameters:
    riskRewardRatio (int)
    winRate (float)
    riskPerTrade (float)
    tradesPerDay (int)
    tradingDaysPerMonth (int)
  Returns: float expectedGrowthPerMonth

Updated:
strategy_table(showTable, darkTheme, riskRewardRatio, winRate, riskPerTrade, tradesPerDay, tradingDaysPerMonth)
  if strategy return table strategy table
  Parameters:
    showTable (bool)
    darkTheme (bool)
    riskRewardRatio (int)
    winRate (float)
    riskPerTrade (float)
    tradesPerDay (int)
    tradingDaysPerMonth (int)
  Returns: table strategy table
Phát hành các Ghi chú
v27
Phát hành các Ghi chú
v28
Phát hành các Ghi chú
v29

Updated:
added one more TP mode
TP_SL_math(tpType, useTp2, useTp3, useTp4, useTp5, useTp6, rr_pt, reward, tp1x, tp2x, tp3x, tp4x, tp5x, tp6x, slr, perc_from_sl)
  TP_SL_MATH
  Parameters:
    tpType (string)
    useTp2 (bool)
    useTp3 (bool)
    useTp4 (bool)
    useTp5 (bool)
    useTp6 (bool)
    rr_pt (float)
    reward (float)
    tp1x (float)
    tp2x (float)
    tp3x (float)
    tp4x (float)
    tp5x (float)
    tp6x (float)
    slr (float)
    perc_from_sl (float)
  Returns: PLOTS
alertsbacktestingstrategies

Thư viện Pine

Theo tinh thần TradingView thực sự, tác giả đã xuất bản mã Pine này dưới dạng thư viện nguồn mở để các lập trình viên Pine khác trong cộng đồng của chúng tôi có thể sử dụng lại. Chúc mừng tác giả! Bạn có thể sử dụng thư viện này riêng tư hoặc trong các bài đăng nguồn mở khác. Tuy nhiên, bạn cần sử dụng lại mã này theo Quy tắc nội bộ.


Scripts that I post publicly are experimental. They are not financial advices. Always backtest your ideas using your own methodologies.

automate your alert: signalautotrade.com
contact me directly on telegram: @Sosso_bott
Ngoài ra, trên:

Thông báo miễn trừ trách nhiệm