Home » Box Functions » Understanding the box.set_text_size() Function in Pine Script

Understanding the box.set_text_size() Function in Pine Script

Photo of author
Published on

In this article, we delve into the box.set_text_size() function, an essential tool for enhancing the visual presentation of boxes in your charts. By customizing text size within boxes, users can improve readability and make their graphical annotations more informative.

Introduction to box.set_text_size()

The box.set_text_size() function is utilized to set the size of the text within a box object in Pine Script. This function is particularly useful for traders and analysts who want to annotate their charts with boxes containing text for better visualization of trading strategies, notes, or important price levels.


box.set_text_size(id, text_size) → void


  • id (series box): This argument specifies the box object whose text size will be adjusted.
  • text_size (series string): This argument defines the size of the text within the box. Pine Script provides several predefined sizes, including size.auto, size.tiny, size.small, size.normal, size.large, and size.huge.


To illustrate how box.set_text_size() functions, let’s create a simple example where we generate a box on the chart and adjust its text size for clarity.

indicator("Custom Text Size Box", overlay=true)

// Create a box
myBox = box.new(bar_index[20], low, bar_index, high, border_color=color.blue, bgcolor=color.new(color.blue, 90))

// Set the text of the box
box.set_text(myBox, "Key Support Area")

// Adjust the text size
box.set_text_size(myBox, size.large)

In this example, we first create a box that spans from 20 bars ago to the current bar, covering the range from the lowest to the highest price within that period. We then set the text within this box to “Key Support Area” and use box.set_text_size() to enlarge the text for better visibility.


Detailed Walkthrough

  • indicator("Custom Text Size Box", overlay=true): This line declares a new indicator script that will overlay on the main chart.
  • box.new(...): Creates a new box object. The parameters specify the box’s position and appearance.
  • box.set_text(myBox, "Key Support Area"): Assigns the text “Key Support Area” to our box, myBox.
  • box.set_text_size(myBox, size.large): This crucial line adjusts the text size within myBox to large, making it more readable.

Key Features and Takeaways

  • Function Usability: The box.set_text_size() function is essential for creating visually appealing and informative chart annotations in Pine Script.
  • Syntax: It takes two parameters, the box id and the desired text_size, offering flexibility in text presentation.
  • Application: Ideal for highlighting important areas on the chart, such as support/resistance levels, with customizable text annotations for better readability.

By utilizing the box.set_text_size() function, Pine Script users can significantly enhance the effectiveness of their chart annotations, making them more readable and informative. This function is just one of the many tools available in Pine Script to aid in the visualization of trading ideas and strategies.

Leave a Comment