INVITE-ONLY SCRIPT

Master in Trading, version 1.7

123
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org/MPL/2.0/
// © GowriShankar

//version=6
indicator("Master in Trading, version 1.7", overlay = true, max_lines_count = 500, dynamic_requests = true)

color_of_lines_12 = input.color(title = "Color of Lines 1-2", defval = color.new(#fec500,0))
width_of_lines_12 = input.int(title = "Width", defval = 2, minval = 1)
style_of_lines_12 = input.string(title = "Style", defval = "Solid", options = ["Solid", "Dotted", "Dashed"])
selected_style_of_lines_12 = style_of_lines_12 == "Solid" ? line.style_solid :
style_of_lines_12 == "Dotted" ? line.style_dotted :
style_of_lines_12 == "Dashed" ? line.style_dashed : na

color_of_lines_34 = input.color(title = "Color of Lines 3-4", defval = color.new(#0b00ff,0))
width_of_lines_34 = input.int(title = "Width", defval = 2, minval = 1)
style_of_lines_34 = input.string(title = "Style", defval = "Solid", options = ["Solid", "Dotted", "Dashed"])
selected_style_of_lines_34 = style_of_lines_34 == "Solid" ? line.style_solid :
style_of_lines_34 == "Dotted" ? line.style_dotted :
style_of_lines_34 == "Dashed" ? line.style_dashed : na

text_size = input.string(title = "Text Size", defval = "Normal", options = ["Auto", "Tiny", "Small", "Normal", "Large", "Huge"])

selected_text_size = if(text_size == "Auto")
size.auto
else
if(text_size == "Tiny")
size.tiny
else
if(text_size == "Small")
size.small
else
if(text_size == "Normal")
size.normal
else
if(text_size == "Large")
size.large
else
if(text_size == "Huge")
size.huge

[h_open, h_close, h_prev_day_last_close, is_first_bar_of_15_min, is_2nd_first_bar_of_15_min, is_3rd_first_bar_of_15_min, is_15_bar_confirmed] = request.security(ticker.heikinashi(syminfo.tickerid), "15", [open, close[1], close[1], session.isfirstbar[1], session.isfirstbar[2], session.isfirstbar[2], barstate.isconfirmed], lookahead = barmerge.lookahead_on, gaps = barmerge.gaps_off)

var float close_prev_day_last_candle = na
var float close_1st_candle = na
var float close_2nd_candle = na
var float open_3rd_candle = na

if session.isfirstbar
close_prev_day_last_candle := h_prev_day_last_close

if is_first_bar_of_15_min
close_1st_candle := h_close

if is_2nd_first_bar_of_15_min
close_2nd_candle := h_close

if is_3rd_first_bar_of_15_min
open_3rd_candle := h_open

if session.islastbar or session.islastbar_regular
close_prev_day_last_candle := na
close_1st_candle := na
close_2nd_candle := na
open_3rd_candle := na

var line close_prev_day_last_candle_line = na
var line close_1st_candle_line = na
var line close_2nd_candle_line = na
var line open_3rd_candle_line = na

var label close_prev_day_last_candle_label = na
var label close_1st_candle_label = na
var label close_2nd_candle_label = na
var label open_3rd_candle_label = na

if session.isfirstbar
line.set_extend(id = close_prev_day_last_candle_line, extend = extend.none)
line.set_extend(id = close_1st_candle_line, extend = extend.none)
line.set_extend(id = close_2nd_candle_line, extend = extend.none)
line.set_extend(id = open_3rd_candle_line, extend = extend.none)

line.set_x2(id = close_prev_day_last_candle_line, x = bar_index[1])
line.set_x2(id = close_1st_candle_line, x = bar_index[1])
line.set_x2(id = close_2nd_candle_line, x = bar_index[1])
line.set_x2(id = open_3rd_candle_line, x = bar_index[1])

close_prev_day_last_candle_line := na
close_1st_candle_line := na
close_2nd_candle_line := na
open_3rd_candle_line := na

label.delete(id = close_prev_day_last_candle_label)
label.delete(id = close_1st_candle_label)
label.delete(id = close_2nd_candle_label)
label.delete(id = open_3rd_candle_label)

if session.isfirstbar
close_prev_day_last_candle_line := line.new(bar_index, close_prev_day_last_candle, bar_index+1, close_prev_day_last_candle, color = color_of_lines_12, extend = extend.right, width = width_of_lines_12, style = selected_style_of_lines_12)
close_prev_day_last_candle_label := label.new(bar_index+5, close_prev_day_last_candle, color = color_of_lines_12, size = selected_text_size, style = label.style_label_lower_left, text = "Prev. " + str.tostring(close_prev_day_last_candle,"#.##"), textcolor = color.black)

if is_first_bar_of_15_min and not is_first_bar_of_15_min[1]
close_1st_candle_line := line.new(bar_index, close_1st_candle, bar_index+1, close_1st_candle, color = color_of_lines_12, extend = extend.right, width = width_of_lines_12, style = selected_style_of_lines_12)
close_1st_candle_label := label.new(bar_index+5, close_1st_candle, color = color_of_lines_12, size = selected_text_size, style = label.style_label_lower_left, text = "1st " + str.tostring(close_1st_candle,"#.##"), textcolor = color.black)

if is_2nd_first_bar_of_15_min and not is_2nd_first_bar_of_15_min[1]
close_2nd_candle_line := line.new(bar_index, close_2nd_candle, bar_index+1, close_2nd_candle, color = color_of_lines_34, extend = extend.right, width = width_of_lines_34, style = selected_style_of_lines_34)
close_2nd_candle_label := label.new(bar_index+5, close_2nd_candle, color = color_of_lines_34, size = selected_text_size, style = label.style_label_upper_left, text = "2nd " + str.tostring(close_2nd_candle,"#.##"), textcolor = color.white)

if is_3rd_first_bar_of_15_min and not is_3rd_first_bar_of_15_min[1]
open_3rd_candle_line := line.new(bar_index, open_3rd_candle, bar_index+1, open_3rd_candle, color = color_of_lines_34, extend = extend.right, width = width_of_lines_34, style = selected_style_of_lines_34)
open_3rd_candle_label := label.new(bar_index+5, open_3rd_candle, color = color_of_lines_34, size = selected_text_size, style = label.style_label_upper_left, text = "3rd " + str.tostring(open_3rd_candle,"#.##"), textcolor = color.white)

label.set_x(id = close_prev_day_last_candle_label, x = bar_index+1)
label.set_x(id = close_1st_candle_label, x = bar_index+1)
label.set_x(id = close_2nd_candle_label, x = bar_index+1)
label.set_x(id = open_3rd_candle_label, x = bar_index+1)

คำจำกัดสิทธิ์ความรับผิดชอบ

ข้อมูลและบทความไม่ได้มีวัตถุประสงค์เพื่อก่อให้เกิดกิจกรรมทางการเงิน, การลงทุน, การซื้อขาย, ข้อเสนอแนะ หรือคำแนะนำประเภทอื่น ๆ ที่ให้หรือรับรองโดย TradingView อ่านเพิ่มเติมใน ข้อกำหนดการใช้งาน