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

[amibroker] Re: Referencing the backtested portfolio equity in the buy formula



PureBytes Links

Trading Reference Links

Thanks, Mike. The "Allow position size shrinking" trick basically 
does what I need. Although, I don't understand the 2nd part about the 
custom backtester code. Is there any documentation about the advanced 
backtest code?

There is one issue I cannot solve. I would like to have in the Buy 
condition the following.

MA(C,5)*MA(V,5)*50>Foreign("~~~EQUITY", "C")

i.e. if the equity grows, the non liquid stocks will be ignored.

How is it possible code this? The above example does not work.


--- In amibroker@xxxxxxxxxxxxxxx, "Mike" <sfclimbers@xxx> wrote:
>
> Hi,
> 
> If I understand your scenario correctly. You don't have to worry 
> about it, because AmiBroker will not allow you to place an order 
for 
> a value greater than you actually have available in your account. 
> Just select the "Allow position size shrinking" checkbox from the 
AA 
> settings window, then set your position size based on your volume 
> calculations. AmiBroker will scale down as necessary when your 
> calculations exceed your equity.
> 
> Otherwise, as explained by Graham, if you are backtesting over more 
> than a single symbol, then you can access the equity from within 
> custom backtester code.
> 
> e.g.
> 
> SetBacktestMode(backtestRegularRaw);
> SetCustomBacktestProc("");
> 
> if (Status("action") == actionPortfolio) {
>   bo = GetBacktesterObject();
>   bo.PreProcess();
> 
>   for (bar = 0; bar < BarCount; bar++) {
>     for (sig = bo.GetFirstSignal(bar); sig; sig = bo.GetNextSignal
> (bar)) {
>       ... // Make any adjustment to sig.PosSize that you want using 
> bo.Equity in your calculations.
>       ... // If you need access to the symbol for Volume, etc. use 
> Foreign(sig.Symbol, "V").
>     }
> 
>     bo.ProcessTradeSignals(bar);
>   }
> 
>   bo.PostProcess();
> } 
> 
> Mike
> 
> --- In amibroker@xxxxxxxxxxxxxxx, "zozuzoza" <zozuka@> wrote:
> >
> > I tried this but doesn't work.
> > PositionSize = Min(Foreign("~~~EQUITY", "C"),MA(C,5)*MA(V,5)/50);
> > It is a portfolio backtest.
> > The question remains. How is it possible for the positionsize to 
> > follow the equity AND also limit the positionsize by the volume?
> > 
> > --- In amibroker@xxxxxxxxxxxxxxx, Graham <kavemanperth@> wrote:
> > >
> > > For a portfolio backtest the only place is in the 
positionsizing 
> as
> > > that is only used during the portfolio backtest pass
> > > If it is a single symbol backtest then you can use Equity().
> > > If you need to determine trade entries or exits based on 
portfolio
> > > equity value then you need to use the advanced backtest code to 
> > change
> > > the trade values.
> > > 
> > > -- 
> > > Cheers
> > > Graham Kav
> > > AFL Writing Service
> > > http://www.aflwriting.com
> > > 
> > > 
> > > 
> > > 2008/5/30 zozuzoza <zozuka@>:
> > > > Is there any way to reference the portfolio equity
> > > > Foreign("~~~EQUITY", "C") in the buy formula itself?
> > > >
> > > > I guess that the portfolio equity is available after running 
the
> > > > backtest so it cannot be referenced in the buy formula itself.
> > > >
> > > > I've checked the AddToComposite stuff but it is not clear how 
> it 
> > can
> > > > be done.
> > > >
> > > > Is there a simple solution for this? Thank you.
> > > >
> > > >
> > > > ------------------------------------
> > > >
> > > > Please note that this group is for discussion between users 
> only.
> > > >
> > > > To get support from AmiBroker please send an e-mail directly 
to
> > > > SUPPORT {at} amibroker.com
> > > >
> > > > For NEW RELEASE ANNOUNCEMENTS and other news always check 
> DEVLOG:
> > > > http://www.amibroker.com/devlog/
> > > >
> > > > For other support material please check also:
> > > > http://www.amibroker.com/support.html
> > > > Yahoo! Groups Links
> > > >
> > > >
> > > >
> > > >
> > >
> >
>



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

Please note that this group is for discussion between users only.

To get support from AmiBroker please send an e-mail directly to 
SUPPORT {at} amibroker.com

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

For other support material please check also:
http://www.amibroker.com/support.html
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/