Hi, Thanks for your help. Unfortunately it still doesn't work -- ValueWhen didn't help :-(
Jacek --- In [email protected], "Anthony Faragasso" <ajf1...@...> wrote: > > Would you use: > > MarginDeposit = Valuewhen(buy,atr(20)) * PointValue: > > > ----- Original Message ----- > From: jacek.lempart > To: [email protected] > Sent: Saturday, December 27, 2008 11:54 AM > Subject: [amibroker] Problem with volatile position sizing > > > Hello, > > I have got a problem with the following piece of code: > > Capital = 50000; > PositionSize = -5; > RoundLotSize = 1; > PointValue = 10; > TickSize = 1; > MarginDeposit = Ref(ATR(20), -1) * PointValue; > > The problem is that MarginDeposit is using always the latest value of > ATR(20), not the one from the past, when position was opened. I wanted > to implement position sizing for futures based on volatility model, i.e: > * ATR(20) is 50 points and each point means 10 dollars or whatever > * we are going to allow volatility to be maximum of 5% of our equity > (i.e. $2500) > * $2500 / (50 * 10) = 5 --> it gives us 5 contracts which we can buy/sell > > How can I force AmiBroker to use ATR(20) value for the time period > when the position is being opened? Many thanks for your help. > > > > > > > ------------------------------------------------------------------------------ > > > > No virus found in this incoming message. > Checked by AVG - http://www.avg.com > Version: 8.0.176 / Virus Database: 270.10.0/1865 - Release Date: 12/26/2008 1:01 PM >
