Stop loss and Take Profit in $$ example

Dec 23, 2020

Static chart image
Signals
Money Management
Moving Averages

The Stop loss and Take Profit in $$ example tool provides a practical demonstration of how to implement currency-based exit conditions within a Pine Script strategy, allowing traders to define risk and reward in absolute monetary terms regardless of position size.

Usage

The Usage section describes how the script can be used to manage trades based on specific financial targets. This strategy uses a simple Moving Average crossover as its entry signal: a long position is opened when the 14-period SMA crosses above the 28-period SMA, and a short position is opened when it crosses below.

Once a trade is active, the script applies monetary exit logic:

  • Targeting Profits: Users can input a specific dollar amount (e.g., $200) they wish to gain. The script calculates the exact price level required to reach this profit based on the current position size.
  • Managing Risk: Users set a maximum dollar amount they are willing to lose (e.g., $100). The script automatically determines the price level for the stop loss.

The script dynamically adjusts the exit price levels if the position size changes, ensuring the monetary risk remains constant. Visual lines and colored fills are displayed on the chart to indicate the active Take Profit and Stop Loss zones relative to the average entry price.

Details

The script executes currency-based exits by converting a monetary value into ticks/points, which are then passed to the strategy.exit function. This is achieved through a custom function that divides the target money amount by the symbol's point value and the absolute value of the current position size.

The implementation relies on syminfo.pointvalue and syminfo.mintick to ensure compatibility across various asset classes, including stocks, forex, and futures. By calculating the exit levels in ticks rather than static price points, the strategy maintains its mathematical accuracy across different instruments. The visual components use plot.style_linebr to ensure that levels are only drawn when a position is active, preventing chart clutter during periods without active trades.

Settings

  • Take Profit $$: Specifies the target profit amount in the currency of the instrument being traded.
  • Stop Loss $$: Specifies the maximum loss amount in the currency of the instrument being traded.

FAQ

How does the script calculate exit levels for different position sizes?

The script utilizes the strategy.position_size variable to scale the exit points. If the position size increases, the distance to the monetary stop loss or take profit price levels will narrow to maintain the exact dollar value defined in the settings.

Does this work on all symbols?

Yes, the script is designed to be universal. It uses syminfo.pointvalue to determine the value of a single point for the specific asset on the chart, making it applicable to stocks, crypto, forex, and commodities.

How can I access the Stop loss and Take Profit in $$ example?

You can get access on the LuxAlgo Library for charting platforms like TradingView, MetaTrader (MT4/MT5), and NinjaTrader for free.

Free access on the following platforms
tradingviewSymbolTradingView
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

ninjatraderNinjaTrader
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

metatrader4MetaTrader 4/5
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

thinkorswimThinkorswim
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

Trading & investing are risky and many will lose money in connection with trading and investing activities. All content on this site is not intended to, and should not be, construed as financial advice. Decisions to buy, sell, hold or trade in securities, commodities and other investments involve risk and are best made based on the advice of qualified financial professionals. Past performance does not guarantee future results.

Hypothetical or Simulated performance results have certain limitations. Unlike an actual performance record, simulated results do not represent actual trading. Also, since the trades have not been executed, the results may have under-or-over compensated for the impact, if any, of certain market factors, including, but not limited to, lack of liquidity. Simulated trading programs in general are designed with the benefit of hindsight, and are based on historical information. No representation is being made that any account will or is likely to achieve profit or losses similar to those shown.

Testimonials appearing on this website may not be representative of other clients or customers and is not a guarantee of future performance or success.

As a provider of technical analysis tools and strategies, we do not have access to the personal trading accounts or brokerage statements of our customers. As a result, we have no reason to believe our customers perform better or worse than traders as a whole based on any content, tool, or platform feature we provide.

Charts used on this site are by TradingView in which the majority of our technical indicators are built on. TradingView® is a registered trademark of TradingView, Inc. www.TradingView.com TradingView® has no affiliation with the owner, developer, or provider of the Services described herein.

Market data is provided by CBOE, CME Group, BarChart, Massive, CoinAPI. Select U.S. equities data is provided through Massive. CBOE BZX real-time U.S. equities data is licensed from CBOE and provided through BarChart. Real-time futures data is licensed from CME Group and provided through BarChart. Select cryptocurrency data, including major coins, is provided through CoinAPI. All data is provided “as is” and should be verified independently for trading purposes.

This does not represent our full Disclaimer. Please read our full disclaimer.

© 2026 LuxAlgo Global, LLC.