David,
I haven't gotten to the point of selecting position size, however, if you know
your entry price and initial stop, you can use something like the following to
determine initial dollar risk:
Prange = PHighPrice - PLowPrice;
MaxLoss = PointValue* PRange;
MaxLossLimit = Optimize("MaxLoss", 1000, 150, 4000, 25);
In this case I am going long at PhighPrice with an initial stop a PLowPrice
and not taking the trade if the MaxLoss exceeds a certain level. From this
point you could calculate the MaxLoss as a % of equity. Does this help?
James
________________________________
From: dbwyatt_1999 <[email protected]>
To: [email protected]
Sent: Saturday, May 30, 2009 7:39:47 AM
Subject: [amibroker] PositionSize based on Equity and Trade Risk
I know setting PositionSize based on Equity and Trade Risk has been the topic
of numerous threads and writeups, but I'm missing some understanding. I'm
backtesting a portfolio of futures contracts and would like to set the Position
size of each trade based on each trade's risk (i.e. abs(entryPrice -
stopPrice)) and a percent of the current portfolio Equity value. I understand
that to get the current portfolio Equity, I need to use the custom backtester.
The custom backtester also gives me access to all the data I need to calculate
a new PosSize except my stopPrice values.
What is the easiest way to access my backtester Phase 1 stopPrice array in the
custom Phase 2 backtester for each trade so that I can calculate a new PosSize?
Using AddToComposite( ) and Foreign() does not seem like an option because I
want my individual stop values for each instrument, not a portfolio composite
of all stop values. Or maybe I would have to create a separate composite for
each instrument. Or do I have to resort to something like writing and reading
files or developing a custom DLL to store the stopPrices between the backtester
Phase 1 and the custom backtester Phase 2? Hopefully, I'm just not
understanding something and there is an easier way. I would think that
accessing Phase 1 backtester variables in Phase 2 would be pretty common;
especially for calculating custom metrics.
Thanks for any suggestions or insights.
Regards,
David