PositionSizer for ninjatrader | Trading Reviews and Vendors

futures.io - futures trading strategies, market news, trading charts and platforms

Trading Reviews and Vendors

Discuss and review vendors of commercial trading products, trading rooms and services, trading indicators or third-party paid add-ons


PositionSizer for ninjatrader

  #10 (permalink)

Market Wizard
Berlin, Europe
Trading Experience: Advanced
Platform: NinjaTrader, MultiCharts
Broker/Data: Interactive Brokers
Favorite Futures: Keyboard
Fat Tails's Avatar
Posts: 9,808 since Mar 2010
Thanks: 4,239 given, 26,470 received

Your answer is too simple

trendisyourfriend View Post
Why would anyone need such a tool in the futures market ? After all, we don't have fractional lot size or contract size. You could simply decide to handle 1 contract by chunk of $5000US in your account or use any other value you feel appropriate. You don't even need Excel to determine that. Simple common sense is all that you need.

This is too easy. I use NinjaTrader to run ATM strategies, and the question arises indeed, how to adapt the stop loss size to volatility, exchange rate and risk allowance. This is what I do once per week:

Input Values: Maximum Risk, Exchange Rate, ATR(36) of a 5 minute chart and Spread

(1) I first enter two values as input -> maximum risk per trade and current exchange rate EUR/USD -> see red fields in the excel sheet below

(2) Then I measure the lowest and highest value for the ATR(36) on a 5 min chart that could be found during the RTH session (my trading times) over the last week, not including holiday sessions.

Money Management Stop-Loss is calculated as ATR(36) plus Spread

I assume that the ATR(36) of the 5 min chart is a reasonable value for my money management stop-loss as required by my setups. Starting from these values I calculate the stop loss in ticks and the number of contracts that I am allowed to trade.

Notes to the Spreadsheet below by Column

A: Instrument
B: Contract Month
C: Tick Size in points
D: Minimum measured for ATR(36) in points
E: Maximum measured for ATR(36) in points
F: The assumed spread, which is added to the ATR to determine the stop loss
G: The stop loss calculated from volatility: Mean of minimum and maximum ATR + spread
H: The selected stop loss, manually adjusted to avoid an uneven number of contracts
I: Contract Multiplier
J: TickValue
K: StopValue in Local Currency calculated from selected stop loss
L: StopValue in Euro converted from local currency
M: Risk allowed in Euro
N: Number of contracts that can be traded calculated from stop loss value

The two red fields are manual inputs. The blue field are taken from a 5 min chart that covers the last week. The two orange columns are my outputs that I use to enter my default strategies for the instruments.

If volatility changes for an instrument, I may have to adjust contract size. The whole process takes a few minutes. The advantage of doing this manually is that a change informs me about different market conditions, in case that I did not realize it during the week.


For the next week I am allowed to trade 6 contracts of TF with a stop loss size of 14 ticks, or alternatively I can trade 4 contracts of CL with a stop loss of 20 ticks. In case that my calculations are wrong, at least it was myself who committed the error and I can take full responsibility for it. The approach is similar to the PositionSizer.

Attached Thumbnails
PositionSizer for ninjatrader-contract-size-octobre-18.pdf  
Reply With Quote
The following 12 users say Thank You to Fat Tails for this post: