Hello, I just run an optimize using your code on the QQQQ 5 min and it worked just fine with net % profit between 5.09 and -0.49 The only difference between your code and the one I run, was I changed your first two lines to shorten the run time and help indentify your moving avgs in the report.
MA1 = Optimize ( "MA1", 50, 5, 20, 1 ); MA2 = Optimize ( "MA2", 50, 5, 20, 1 ); only to shorten the run time and help indentify your moving avg So I would suggest that you do not have the proper settings in your AA Ron --- In [email protected], "longarm61" <[EMAIL PROTECTED]> wrote: > > Thanks for the replies. Tomasz, I tried to understand what you're > saying and I looked at the gif you posted...and I think I get how > trades are executed in regards to the backtests, but I'm still > confused about the optimization thing. > > First, let me repeat what I'm trying to get out of the optimization > just to make sure I understand what it's supposed to do: I want it > to tell me that the 3-bar MA crossing the x-bar MA (MA1) to buy, and > the 3-bar MA crossing the x-bar MA (MA2) to sell, yields the best > profit for the time period tested. IOW, I want to know which > COMBINATION of MA1 and MA2 was most profitable. > > Another example of the optimization results: > > Net % Profit MA MA > ------------ ---- ---- > 10.06 29 52 > 10.06 29 132 > 10.06 29 72 > > In fact, ALL 195 lines containing a MA of 29 in the first column > have identical results. (I assume that the first column is MA1, the > MA to buy.) It still makes zero sense to me that the results would > all be the same when the MA to SELL is ranging from 5 to 200. How > can you have the same profits when you're exiting the trades > at different times??? In fact, when I run individual backtests on > these same combinations of MAs, I get different results: > > MA1 MA2 Profit % > --- ---- -------- > 29 52 10.01 > 29 132 9.02 > 29 72 9.64 > > So why would the backtests have different results than the > optimization? I still say I must be misunderstanding something > about the optimization or doing something wrong. Anyone care to take > another shot at explaining this to me? > > Thanks again for your patience. > > > > > > > --- In [email protected], "Tomasz Janeczko" <groups@> > wrote: > > > > Hello, > > > > For starters: there is not big difference if you choose Cross vs > > function. > > > > Cross checks essentially '<=' condition on previous bar and '>' on > current bar. > > > > The results would be the same (with the possible exception of very > first > > trade that > will give you at the beginning of backtest) because > > under normal circumstances you are allowed to hold only ONE open > > position for one symbol. So it does not matter if you have > repetitive signals > > - they will be simply ignored until matching sell occurs, see this > how it works: > > > > http://www.amibroker.com/gifs/bt_regular.gif > > > > As to your question regarding optimization, your results do not > change > > when second (MA2) changes because your ENTRY rule does not depend > on > > MA2. Only MA1 is used in "Buy" rule and it decides which trades > are > taken or not. > > MA2 is used ONLY for exits and because of small averaging period > exits > > occur right after entry so it does not modify your results, and > they in fact > > depend solely on entry strategy. > > > > You should really run Scan, to find out when all signals occur to > learn > > the way signals are converted to trades. > > And again this: > > http://www.amibroker.com/gifs/bt_regular.gif > > > > is worth studying. It shows "Regular backtest". > > > > There are 3 other backtest modes available (RegularRaw, > RegularRawMulti and rotational) > > but I would suggest to start with the regular first. > > > > Best regards, > > Tomasz Janeczko > > amibroker.com > > ----- Original Message ----- > > From: "longarm61" <norm1@> > > To: <[email protected]> > > Sent: Monday, August 20, 2007 5:13 AM > > Subject: [amibroker] Re: Optimization Help > > > > > > > Hey, Steve, thanks for the reply. That's interesting because I > used > > > the AFL Wizard for my buy and sell code. Wonder why it would > give me > > > code that generates a buy for every bar that remains above the > MA? > > > It's also interesting that for a 1-month backtest using 5- minute > > > bars, my original code yielded only 1 more trade (line) than > your > > > code did. > > > > > > But the thing I'd really like help understanding is the > > > Optimization. I tried it using your code and I'm still confused > by > > > the results. For example, it shows: > > > > > > NET % PROFIT MA MA > > > ------------ ---- ---- > > > 3.28 133 5 > > > 3.28 133 15 > > > 3.28 133 8 > > > 3.28 133 9 > > > > > > As you can see, it shows the same net % profit for every result > with > > > a MA of 133, even though the MAs in the second column are all > > > different. In fact, ALL the numbers in all the columns are > > > indentical for the MA-133. Why would that be? Doesn't the first > MA > > > above represent MA1 and the second MA represent MA2? > > > > > > Either I'm still doing something wrong or I'm misunderstanding > > > something (very possible!), since obviously trades with > different > MAs > > > for sells aren't going to have the exact same results, even if > buys > > > use the same MA. > > > > > > Looking for enlightenment. Thanks. > > > > > > > > > > > > > > > > > > > > > > > > > > > --- In [email protected], "Steve Dugas" <sjdugas@> wrote: > > >> > > >> Hi, your code gives buy sig not just on crossover but also on > every > > > bar > > >> where MA3 remains above the MA it just crossed. Similar result > for > > > sell > > >> sigs. Try it this way... > > >> > > >> Buy = Cross( MA( Close , 3 ), MA( Close , MA1 ) ); > > >> Sell = Cross( MA( Close , MA2 ), MA( Close , 3 ) ); > > >> > > >> Steve > > >> > > >> ----- Original Message ----- > > >> From: "longarm61" <norm1@> > > >> To: <[email protected]> > > >> Sent: Sunday, August 19, 2007 6:09 PM > > >> Subject: [amibroker] Optimization Help > > >> > > >> > > >> > Hello, complete AFL newbie here. This should be a simple > one. > > > If I > > >> > have a system whereby a 3-bar MA crosses another MA to buy, > and a > > > 3- > > >> > bar MA crosses a different MA to sell, how would I code the > > >> > optimization to find the most profitable COMBINATION of MAs > for > > > the > > >> > buy and sell? > > >> > > > >> > Here's how I attempted to do it--I know it's wrong, as it > crunched > > >> > numbers for about 2 hours but then gave me results that made > no > > > sense: > > >> > > > >> > > > >> > MA1 = Optimize ( "MA", 50, 5, 200, 1 ); > > >> > MA2 = Optimize ( "MA", 50, 5, 200, 1 ); > > >> > > > >> > Buy = MA( Close , 3 ) > MA( Close , MA1 ); > > >> > > > >> > Sell = MA( Close , 3 ) < MA( Close , MA2 ); > > >> > > > >> > Short = 0; > > >> > > > >> > Cover = 0; > > >> > > > >> > > > >> > Thanks in advance for your patience and help. > > >> > > > >> > > > >> > > > >> > 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 > > > > > > > > > > > > > > > > > >
