作者: William Harris · 最后审核
How to Calculate Pip Value in MetaTrader 5 (any symbol, any account currency)
您需要准备
- • MT5 with the symbol in Market Watch
- • Calculator or spreadsheet
- • Current exchange rate for cross calculations
分步说明
第 1 步:Understand what a pip is
A pip ('Percentage in Point') is the unit of price movement in forex. For most pairs it's the 4th decimal place — EURUSD moving from 1.0850 to 1.0851 is 1 pip. For JPY pairs it's the 2nd decimal — USDJPY 150.00 to 150.01 is 1 pip.
MT5 also reports prices in points: 1 pip = 10 points on 5-decimal pricing (modern brokers), 1 pip = 1 point on 4-decimal pricing (legacy). EURUSD price of 1.08501 has 5 decimals — the last digit is a 'fractional pip' or 'pipette', and 10 of them make 1 pip. Modern broker pricing is almost always 5-decimal; pip vs point matters when configuring EA inputs that ask for stop loss 'in points' vs 'in pips'.
For each symbol, MT5 stores: the digit count (5 for EURUSD, 3 for USDJPY, 2 for XAUUSD), the point size (smallest price movement), and the contract size (100,000 for forex, 100 for gold, 1 for crypto on most brokers). Pip size is typically point × 10.
第 2 步:USD-quote pairs (EURUSD, GBPUSD, AUDUSD, NZDUSD)
When USD is the quote currency (second part of the pair) and your account is in USD, pip value is constant:
Pip Value per 1.0 lot = Pip Size × Contract Size EURUSD: 0.0001 × 100,000 = $10/pip per lot GBPUSD: 0.0001 × 100,000 = $10/pip per lot AUDUSD: 0.0001 × 100,000 = $10/pip per lot NZDUSD: 0.0001 × 100,000 = $10/pip per lot
For smaller lot sizes: 0.10 lot = $1/pip 0.01 lot (1 micro-lot) = $0.10/pip
Example: a 50-pip move on 0.10 lot EURUSD = 50 × $1 = $50 profit/loss.
This is the easy case. Memorize $10/pip per lot and you have 90% of retail EUR/GBP/AUD/NZD pairs covered. Save the more complex formulas for JPY pairs, gold, and exotic crosses.
第 3 步:USD-base pairs (USDJPY, USDCHF, USDCAD)
When USD is the base currency (first part of the pair) and your account is in USD, pip value depends on the current exchange rate:
Pip Value per 1.0 lot = (Pip Size × Contract Size) / Current Rate
USDJPY at 150.00: Pip Value = (0.01 × 100,000) / 150.00 = 1000 / 150 = $6.67/pip per lot
USDJPY at 100.00: Pip Value = (0.01 × 100,000) / 100.00 = 1000 / 100 = $10/pip per lot
USDCHF at 0.90: Pip Value = (0.0001 × 100,000) / 0.90 = 10 / 0.90 = $11.11/pip per lot
USDCAD at 1.35: Pip Value = (0.0001 × 100,000) / 1.35 = 10 / 1.35 = $7.41/pip per lot
Update the calculation periodically as exchange rates move. A 10% currency move changes pip value by 10% in the opposite direction. For position sizing, this matters: a USDJPY EA configured at JPY 100 pip value over-sizes positions by 50% if JPY rises to 150.
第 4 步:Cross pairs (EURGBP, EURJPY, GBPJPY)
When neither side of the pair is your account currency, you need the conversion rate of the quote currency to your account currency.
Pip Value = (Pip Size × Contract Size) / Cross Rate × Conversion to USD
EURGBP for USD account, EURGBP rate 0.85, GBPUSD rate 1.27: Pip Value in GBP = 0.0001 × 100,000 = £10 Pip Value in USD = £10 × 1.27 = $12.70/pip per lot
EURJPY for USD account, EURJPY rate 165, USDJPY rate 150: Pip Value in JPY = 0.01 × 100,000 = ¥1000 Pip Value in USD = ¥1000 / 150 = $6.67/pip per lot
GBPJPY for USD account, USDJPY 150: Pip Value in JPY = 0.01 × 100,000 = ¥1000 Pip Value in USD = ¥1000 / 150 = $6.67/pip per lot
These are messier; rely on MT5's pre-computed value (next step) rather than computing manually for cross pairs.
第 5 步:Metals and crypto (XAUUSD, XAGUSD, BTCUSD)
Gold and crypto use different pip conventions:
XAUUSD (Gold) on most brokers: • Pip size = 0.01 (1 cent) • Contract size = 100 oz • Pip Value = 0.01 × 100 = $1/pip per 1.0 lot • A 50-pip move on 1.0 lot gold = $50
Some brokers use different conventions: XAUUSD 1 lot = 1 oz (so pip = $0.01), or pip size = 0.001 (more granularity). Always verify in MT5 → Symbols → Specifications.
XAGUSD (Silver): • Pip size = 0.001 • Contract size = 5000 oz • Pip Value = 0.001 × 5000 = $5/pip per 1.0 lot
BTCUSD: • Pip size varies by broker. Common: 0.01 ($0.01) or 1.00 ($1). • Contract size = 1 BTC on most brokers • Pip Value = pip_size × 1 = $0.01 or $1 per lot per pip • On a $50,000 BTC, a 1% move = $500, so practical 'pip' size as a percentage matters more than the technical pip definition.
For BTC and other crypto pairs, use Money Management mode 'risk by % of equity' rather than computing manually — the pip arithmetic gets confusing at very different price scales.
第 6 步:Non-USD account currencies (EUR, GBP, JPY)
Everything above assumed a USD account. For a non-USD account, divide the USD pip value by the EUR-USD exchange rate (or whatever pair maps your account currency to USD).
Example: GBP account, EURUSD trade, GBPUSD rate 1.27. Pip value in USD = $10/lot (standard EURUSD) Pip value in GBP = $10 / 1.27 = £7.87/pip per lot
Example: EUR account, XAUUSD trade, EURUSD rate 1.08. Pip value in USD = $1/lot (standard XAUUSD) Pip value in EUR = $1 / 1.08 = €0.93/pip per lot
MT5 normalizes pip value to your account currency in Market Watch → Symbols → Properties. Always cross-check against MT5's number; manual calculation is for spot-checks, not production.
第 7 步:Read the pre-computed pip value from MT5
MT5 stores pip value per symbol, in your account currency, updated in real-time as exchange rates move. To view:
1. Open Market Watch (Ctrl+M). 2. Right-click any symbol → 'Specification'. The popup shows full symbol details. 3. Look for 'Tick Value' — this is the dollar value of a 1-point movement on 1 standard lot in your account currency. Multiply by 10 for pip value (because 1 pip = 10 points on modern 5-decimal pricing). 4. Alternatively, use the formula: Pip Value = (Tick Value × 10) × Lot Size
For MQL5 EAs, the API is: SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_VALUE) — returns tick value in account currency. SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_SIZE) — returns tick size in price units. Pip value = (tick_value / tick_size) × pip_size × lot_size
Most retail trade-monitor scripts and position-size calculators use this API directly. The MT5 broker has already done the cross-currency conversion for you.
需要避免的常见错误
- ✗ Using $10/pip for XAUUSD (it's $1/pip per standard lot)解决方法: Gold pip = $1/lot. EURUSD pip = $10/lot. Don't apply EURUSD math to gold.
- ✗ Assuming pip value is constant for USDJPY解决方法: USDJPY pip value moves with the rate. At JPY 100 it's $10/lot; at JPY 150 it's $6.67/lot. Recompute if size matters.
- ✗ Computing pip value manually when MT5 has it pre-computed解决方法: Use Symbol Specification → Tick Value × 10. For EAs: SymbolInfoDouble with SYMBOL_TRADE_TICK_VALUE.
- ✗ Confusing pip and point on 5-decimal pricing解决方法: 1 pip = 10 points on 5-decimal brokers. Always check the EA's docs for 'pip' vs 'point' inputs.
- ✗ Forgetting account-currency conversion解决方法: Pip value is always in account currency. For EUR/GBP accounts, divide the USD number by the account-currency rate.
常见问题
What's the difference between a pip and a pipette?
Brokers added the 5th decimal in the late 2000s to enable tighter raw spreads (e.g. 0.3 pip = 3 pipettes). MT5's price display shows the 5th decimal, but pip-counting in trading conditions and EA inputs typically refers to the 4-decimal pip. If you see 'spread 3' in MT5's Market Watch, that's 3 points = 0.3 pips. Confusing, but consistent if you remember the 10:1 ratio.
What's the smallest lot size MT5 supports?
0.01 lot minimum is the standard. Below that, look for Cent-type accounts at brokers like RoboForex, FBS, FXTM. Cent accounts are useful for ultra-small live testing — you can run a real-money trial with $50 of risk capital that would be unrealistic on a Standard account (where 0.01 lot might risk $30+ per trade).
Is pip value affected by my account leverage?
The confusion arises because higher leverage lets you open larger positions, which then have higher pip values. But that's a position-size effect, not a pip-value effect. Pip value is per-lot constant; leverage determines how many lots you can hold relative to your equity. Position size × Pip value per lot = Total pip value of your exposure.
How do I calculate the cost of spread in dollars?
On a Standard account with wider spreads and no commission, the math is the same but commission = $0. 1.5-pip spread EURUSD: 1.5 × $10 × 1.0 = $15 per round-turn. The ECN with commission usually wins — $12 vs $15 = $3 saved per lot. Scale by your monthly volume: 100 lots/month = $300/month saved by using ECN.
Is there a calculator I can use instead of doing this math?
For manual one-off calculations, an online calculator is faster than the formula. For systematic position sizing in code (EA development, custom scripts), use MT5's MQL5 API: SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_VALUE) — it returns the broker's pre-computed value in your account currency, already correct for the current exchange rate. Don't reimplement pip-value math in MQL5; the broker has done it for you.
Pip value clear — what's next?
Plug pip value into the risk-per-trade formula and you're ready to size positions correctly. Most position-sizing errors trace back to pip value confusion.
Continue to: How to calculate risk per trade →