Hello, No, it does not do that automatically, but it will exit automatically your position (liquidate) if it loses more than user-defined amount or more than 99.9% (automatic ruin stop). One can also program partial exit via sigScaleOut if position in more than one contract.
Best regards, Tomasz Janeczko amibroker.com ----- Original Message ----- From: "loveyourenemynow" <[EMAIL PROTECTED]> To: <[email protected]> Sent: Wednesday, November 26, 2008 11:17 AM Subject: [amibroker] Re: Stop Loss based on equity Do you know if AB hadles automatically margin violations due to losses and rescale accordingly? Gne --- In [email protected], "zozuzoza" <[EMAIL PROTECTED]> wrote: > > I have studied all the docs regarding custom backtester interface. I > wrote the code but it does not do what I want. Could anyone please > look at it what the problem is. Thank you, Zozu > > ///////Stop Loss based on portfolio equity///////////// > StopLossEq=Optimize( "StopLossEq", 10, 1, 7, 0.5 ); > SetCustomBacktestProc(""); > if (Status("action") == actionPortfolio) > { > bo = GetBacktesterObject(); // Get backtester object > bo.PreProcess(); // Do pre-processing > MaxEq=bo.Equity; > for (i = 0; i < BarCount; i++) // Loop through all bars > { > if (i>0 && bo.Equity>MaxEq) MaxEq=bo.Equity; > for (sig = bo.GetFirstSignal(i); sig; sig = bo.GetNextSignal > (i)) > { // Loop through all signals at this bar > if (sig.IsEntry()) // Process entries > { > bo.EnterTrade(i, sig.Symbol, True, > sig.Price,sig.posSize); } > else > { > if (sig.IsExit()) bo.ExitTrade(i, sig.Symbol, > sig.Price); // Process exits > > } > } // End of for loop over signals at this bar > bo.HandleStops(i);// Handle programmed stops at this bar > for (trade = bo.GetFirstOpenPos(); trade; trade = > bo.GetNextOpenPos()) > { // Loop through all open positions > if (bo.Equity<(1-StopLossEq/100)*MaxEq) bo.ExitTrade(i, > trade.Symbol, trade.GetPrice(i+1,"O"),5);//ExitType=ruin > } // End of for loop over trades at this bar > bo.UpdateStats(i, 1); // Update MAE/MFE stats for bar > bo.UpdateStats(i, 2); // Update stats at bar's end > } // End of for loop over bars > bo.PostProcess(); // Do post-processing > } > > > --- In [email protected], "Mike" <sfclimbers@> wrote: > > > > Refer to "AmiBroker Custom Backtester Interface.pdf" in the Files > > section of this group, posted by gp_sydney: > > > > http://f1.grp.yahoofs.com/v1/4MUQScTOe79GNNV- > > > ZkLEVgZrQsvpi7UryW1IV34jAcr5MrdKVujCnYWixQTKH2jURoJKyDJobZlG0ZMwEvdBvx > > nggD5xMLok/AmiBroker%20Custom%20Backtester%20Interface.pdf > > > > You can monitor portfolio equity on a bar by bar basis in custom > > backtester code. If equity falls below your threshold, iterate > through > > the list of open positions and close them out using the low level > > custom backtester API: > > > > http://www.amibroker.com/guide/a_custombacktest.html > > > > Mike > > > > --- In [email protected], "zozuzoza" <zozuka@> wrote: > > > > > > Thanks, the example works on single stock equity. I am looking > for > > > portfolio equity. > > > > > > To correct my question > > > How could I code a stop loss based on portfolio equity? If the > > > portfolio equity drops 5%, close the positions. > > > > > > Has anybody come accross this problem? > > > > > > Thank you. > > > > > > Best regards, > > > zozu > > > > > > --- In [email protected], reinsley <reinsley@> wrote: > > > > > > > > Hi, > > > > > > > > Howard B gave an exemple in this topic : > > > > > > > > http://finance.groups.yahoo.com/group/amibroker/message/130567 > > > > > > > > Best regards > > > > > > > > zozuzoza a écrit : > > > > > > > > > > How could I code a stop loss based on equity? If the equity > > drops > > > 5%, > > > > > close the positions. > > > > > > > > > > Thanks a lot, > > > > > zozu > > > > > > > > > > > > > > > ------------------------------------ **** IMPORTANT **** This group is for the discussion between users only. This is *NOT* technical support channel. ********************* TO GET TECHNICAL 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
