Valeur monétaire d'un point pour 1 lot
Convertit la plus petite variation de prix en devise du compte. Le détour par tick_value/tick_size est obligatoire : sur l'or et les indices, le tick ne vaut pas toujours 1 point.
Cas d'usage
Afficher un P&L prévisionnel en euros/dollars, ou convertir une distance en points en montant risqué.
Prérequis
MetaTrader 5, MQL5
MQL5
double PointValuePerLot(string symbol)
{
double tickValue = SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_VALUE);
double tickSize = SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_SIZE);
double point = SymbolInfoDouble(symbol, SYMBOL_POINT);
if(tickSize <= 0.0)
return 0.0;
return tickValue * (point / tickSize); // valeur d'UN point, pas d'un tick
}
// Exemple : montant risqué par une position existante
double slPoints = MathAbs(PositionGetDouble(POSITION_PRICE_OPEN)
- PositionGetDouble(POSITION_SL)) / _Point;
double risked = slPoints * PointValuePerLot(_Symbol)
* PositionGetDouble(POSITION_VOLUME);
PrintFormat("Risque résiduel : %.2f %s", risked,
AccountInfoString(ACCOUNT_CURRENCY));Résultat
2026.06.10 12:04:09.551 PnLInfo (XAUUSD,M15) tick_value 1.00 | tick_size 0.01 | point 0.01 -> 1 point = 1.00 USD/lot 2026.06.10 12:04:09.552 PnLInfo (XAUUSD,M15) Position #812440021 : SL à 380 pts de l'entrée, volume 0.50 lot 2026.06.10 12:04:09.552 PnLInfo (XAUUSD,M15) Risque résiduel : 190.00 USD 2026.06.10 12:04:09.610 PnLInfo (EURUSD,M15) Contrôle EURUSD : 1 point = 1.00 USD/lot (tick = point ici)
Tick ValuePointConversionP&L