Home » Drawing On Charts » Understanding shape.arrowdown in Pine Script

Understanding shape.arrowdown in Pine Script

Photo of author
Published on

In Pine Script, the shape.arrowdown is a constant string used with the plotshape function to draw downward arrows on a chart. This visual tool is handy for highlighting specific conditions or signals, such as bearish patterns, sell signals, or any other analytical conclusion suggesting a downward price movement. Let’s dive into how to use

Basic Implementation

To start, let’s look at a basic example of how to use shape.arrowdown with the plotshape function:

indicator("My Down Arrow Example", overlay=true)

signalCondition = close < open  // Example condition for plotting an arrow

plotshape(series=signalCondition, style=shape.arrowdown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")
Basic Implementation

In this example, the plotshape function is used to draw a downward arrow whenever the closing price is lower than the opening price, signaling a potential sell.

Walkthrough of the Code

  • Version and Indicator Declaration: We start by specifying the version of Pine Script (@version=5) and declaring our script as an indicator with indicator("My Down Arrow Example", overlay=true). The overlay=true parameter ensures that our shapes are drawn directly on the price chart.
  • Signal Condition: signalCondition = close < open defines our condition for plotting the arrow. Here, the condition is set to true whenever the close of a bar is lower than its open, suggesting a potential downward movement.
  • Plotting the Shape: plotshape(series=signalCondition, style=shape.arrowdown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal") uses the plotshape function to draw the arrows. Here’s a breakdown of the parameters:
    • series=signalCondition: The condition under which the shape will be plotted.
    • style=shape.arrowdown: Specifies that the shape to be plotted is a downward arrow.
    • location=location.abovebar: Positions the arrow above the bar to which it corresponds.
    • color=color.red: Sets the arrow color to red, typically associated with a sell signal or bearish condition.
    • size=size.small: Determines the size of the plotted shape. Options include size.tiny, size.small, size.normal, size.large, and size.huge.
    • title="Sell Signal": Gives a title to the plotted shape, which can be viewed in the indicator legend.

Key Features

  • Function Usability and Syntax: The plotshape function, when used with shape.arrowdown, provides a straightforward syntax for visually representing bearish signals or conditions on a chart.
  • Application: It’s ideal for highlighting specific market conditions that traders and analysts should pay attention to, such as potential sell opportunities or the start of a downward trend.


  • The shape.arrowdown constant in Pine Script is a powerful visual tool for indicating bearish market conditions or potential sell signals.
  • By adjusting the plotshape function parameters, you can customize the appearance and positioning of your arrows to fit your analytical needs.
  • Understanding how to manipulate these visual tools in Pine Script enhances your ability to communicate complex market analyses in an intuitive and visually appealing manner.

This walkthrough should provide a solid foundation for incorporating shape.arrowdown into your Pine Script indicators and strategies, enhancing both the functionality and visual appeal of your trading scripts.

Leave a Comment