[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[amibroker] Re: PositionSize based on Equity and Trade Risk



PureBytes Links

Trading Reference Links

Thanks James, the issue I have is not with calculating risk; it's the fact that I need to use the custom Phase 2 backtester to get the portfolio Equity value of each bar and most of my system logic including my stop price calculations are currently in the regular Phase 1 backtester code.  Once the backtester moves from Phase 1 to Phase 2, my Phase 2 custom backtester code does not have access to my array variables calculated in Phase 1 (unless I'm not doing something correctly).  I'm trying to figure out the easiest way to get my stop prices calculated in Phase 1 into my Phase 2 custom backtester code so that I can calculate a position size based on a percentage of the portfolio equity and the initial risk of each trade.  

I could be going about this all wrong, but my goal is simply to calculate a quantity (i.e. number of futures contracts) for each trade based on a percentage of the current portfolio equity divided by the trade risk (i.e. abs(EntryPrice - StopPrice)*PointValue*TickSize).  

Regards,

David

--- In amibroker@xxxxxxxxxxxxxxx, James <jamesmemphis@xxx> wrote:
>
> 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 <dbw451@xxx>
> To: amibroker@xxxxxxxxxxxxxxx
> 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
>




------------------------------------

**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.

TO GET TECHNICAL SUPPORT send an e-mail directly to 
SUPPORT {at} amibroker.com

TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/amibroker/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:amibroker-digest@xxxxxxxxxxxxxxx 
    mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx

<*> To unsubscribe from this group, send an email to:
    amibroker-unsubscribe@xxxxxxxxxxxxxxx

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/