The strategy.convert_to_symbol()
function in Pine Script is a powerful tool for traders who work with accounts in one currency while trading assets in another. This function seamlessly converts the value from the strategy’s account currency (strategy.account_currency
) to the currency of the symbol on the chart (syminfo.currency
).
Syntax
strategy.convert_to_symbol(value) → series float
Arguments
value
(series int/float): This is the monetary amount in the strategy’s account currency that you wish to convert to the chart’s currency.
Example
In this example, we create a simple strategy to demonstrate the use of strategy.convert_to_symbol()
in a trading context. We assume that the strategy’s account is maintained in Euros (EUR), and we want to convert a specific Euro value to the chart’s currency to calculate the maximum quantity of an asset we can buy.
//@version=5 strategy("strategy_convert_symbol Example", currency = currency.EUR) // Calculate the max quantity we can buy using current chart's currency. calculateContracts(accountBalance) => math.floor(strategy.convert_to_symbol(accountBalance) / syminfo.pointvalue / close) // Determine max quantity we can buy with 300 euros maxQuantity = calculateContracts(300) // Strategy to enter long trades every 15 bars and exit long trades every 20 bars using our calculated quantity. if bar_index % 15 == 0 strategy.entry("LongPosition", strategy.long, qty = maxQuantity) if bar_index % 20 == 0 strategy.close("LongPosition")

Walkthrough
- Strategy Initialization: We initialize the strategy with
strategy("strategy_convert_symbol Example", currency = currency.EUR)
, setting the account currency to EUR. - Calculating Contracts: The
calculateContracts(accountBalance)
function is defined to calculate the maximum number of contracts (or shares) we can buy. It usesstrategy.convert_to_symbol(accountBalance)
to convert the specified Euro amount into the chart’s currency. This value is then divided bysyminfo.pointvalue
and the current closing price (close
) to determine the number of contracts that can be bought with the converted currency. - Trade Logic: The script includes simple trade logic where it enters a long position (
strategy.entry
) every 15 bars and exits (strategy.close
) every 20 bars, using the quantity calculated bycalculateContracts()
.
Key Features
- Function Utility: Converts account currency values to the chart’s currency, facilitating accurate trade calculations across currencies.
- Syntax: Requires a single argument—the value in the account currency to be converted.
- Application: Essential for strategies that manage funds in a different currency from the trading symbol, ensuring precise budgeting and trade size calculations.
Takeaways
- The
strategy.convert_to_symbol()
function is invaluable for trading strategies that operate across different currencies. - It simplifies the conversion process, allowing traders to focus on strategy development rather than currency conversion calculations.
- By incorporating this function, traders can automate their strategies to adapt to currency fluctuations, ensuring consistent and accurate trade execution.
In summary, understanding and utilizing the strategy.convert_to_symbol()
function can significantly enhance the versatility and effectiveness of trading strategies in Pine Script.