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

[amibroker] Q. re. AddToComposite execution time



PureBytes Links

Trading Reference Links

Hi Tomasz, 

no, but I never received any eMail - maybe something´s wrong
with my eMail account - I´ll check that.

Again, thank you very much !!
Have a successful time.

Kindest regards
Robert

--- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <amibroker@xxxx> 
wrote:
> Hello,
> 
> >the "maximum amount of thanks" for your help !!!!!
> >I will try to follow your explanation.
> 
> You are welcome.
> 
> >I tried to contact you via email several times,
> >but never received an answer. Might it be, that there
> >is something wrong with your email client or are you
> >"just" too busy ?
> 
> I have checked my e-mail box and I have received
> only one e-mail from you recently (23 April). You have sent
> the same message to support address too and Marcin answered
> initially and today I have provided longer reply including the same
> code that I posted here.
> Did you send anything more that I am not aware of?
> 
> Best regards,
> Tomasz Janeczko
> amibroker.com
> ----- Original Message ----- 
> From: "rocou" <rocou@xxxx>
> To: <amibroker@xxxxxxxxxxxxxxx>
> Sent: Monday, April 26, 2004 11:45 PM
> Subject: [amibroker] Re: Dear Traders, this seems to be an 
absolutely amazing ...
> 
> 
> 
> 
> I tried to contact you via email several times,
> but never received an answer. Might it be, that there
> is something wrong with your email client or are you
> "just" too busy ?
> 
> Thanks again for your very apreciated help !!
> Kindest regards
> Robert
> 
> 
> --- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <amibroker@xxxx>
> wrote:
> > Rocou,
> >
> > The "PREV" has been covered many times in the past.
> > It is easy to find in the mailing list archive
> > http://www.amibroker.com/listarchive.html
> >
> > Take a look at:
> > http://groups.yahoo.com/group/amibroker/message/45225
> >
> > http://groups.yahoo.com/group/amibroker/message/4507
> > http://groups.yahoo.com/group/amibroker/message/11896
> > http://groups.yahoo.com/group/amibroker/message/31088
> >
> > Some of formulas using PREV may be rewritten using AMA/AMA2
> > but ALL (I mean *ALL*) of them can be rewritten using looping
> > (see http://groups.yahoo.com/group/amibroker/message/45225 )
> >
> > Specifically your "problem" code:
> > TrStopLevel:=If(C=PREV, PREV, If(((Ref(C,-1)<PREV)
> > AND (C<PREV)), Min(PREV,C*(1+nPips)),If((Ref(C,-1)>PREV)
> > AND (C>PREV), Max(PREV,C*(1-nPips)), If(C>PREV,C*(1-nPips),C*
> > (1+nPips)))));
> >
> > can be rewritten using loop too.
> >
> > First step is to "UNFOLD" ugly written code to the form that is
> easier to read and understand:
> >
> > TrStopLevel =
> > If( C = PREV,  PREV,
> >          If( ( (Ref(C,-1) < PREV) AND (C < PREV) ),
> >          Min( PREV, C* (1+nPips) ),
> >          If( (Ref(C,-1) > PREV) AND ( C > PREV ),
> >               Max( PREV, C * (1 - nPips ) ),
> >               If( C > PREV, C * (1-nPips), C * (1+nPips) ) ) ) );
> >
> >
> > Now this can be rewritten using for loop:
> >
> > SetBarsRequired( 10000, 0 );
> >
> > nPips = 0.004; // define your own value here
> >  PREV = TrStopLevel = C[ 0 ]; // init first element
> >
> > for( i = 1; i < BarCount; i++ )
> > {
> >   CurC = C[ i ]; // current value of close
> >   PrevC = C[ i - 1 ]; // previous bar value of close
> >
> >   CurTrStopLevel =
> >   IIf( CurC == PREV,  PREV,
> >          IIf( ( (PrevC < PREV) AND (CurC < PREV) ),
> >          Min( PREV, CurC * ( 1 + nPips) ),
> >          IIf( ( PrevC > PREV) AND ( CurC > PREV ),
> >               Max( PREV, CurC * (1 - nPips ) ),
> >               IIf( CurC > PREV, CurC * ( 1 - nPips), CurC * ( 1 +
> nPips) ) ) ) );
> >
> >    TrStopLevel[ i ] = CurTrStopLevel; // store result
> >    PREV = CurTrStopLevel; // save previous value for next 
iteration
> > }
> >
> > Graph0 = TrStopLevel; // just for plotting
> >
> > What I did ?
> > It is fairly simple:
> > I have just wrapped the MS code into the for loop, replaced arrays
> with scalars
> > ( C replaced with CurC = C[ i ] , Ref( C, -1 ) replaced with PrevC
> = C[ i - 1 ].
> > PREV in my code is a temporary variable that holds previous value
> of calculation in the loop .
> >
> > This way I can keep almost entire code as it was.
> >
> > Advantage? It runs 100x faster than in Metastock. Try it - run
> backtest in MS and in AB and compare times.
> >
> > Best regards,
> > Tomasz Janeczko
> > amibroker.com
> > ----- Original Message ----- 
> > From: "rocou" <rocou@xxxx>
> > To: <amibroker@xxxxxxxxxxxxxxx>
> > Sent: Monday, April 26, 2004 9:51 PM
> > Subject: [amibroker] Dear Traders, this seems to be an absolutely
> amazing ...
> >
> >
> > Dear Traders,
> >
> > this seems to be an absolutely amazing formula
> > from my broker CMS. Sorry if I am getting on your nerves again,
> > but I really need your help how to EXACTLY translate the formula
> > into Amibroker´s AFL for backtesting.
> >
> > The trailing stop is based on a certain amount of pips ("nPip")
> > that you define , NOT on any kind of ATR/volatility !!
> >
> > Buy/Sell and Short/Cover signals are generated, if close value
> > crosses the TrailingStoppLevel Line. That is the whole story.
> > You only have to define the amount of "nPip"´s.
> >
> > The image shows the 15min chart EURUSD and 15 as the value
> > for the nPips parameter.
> >
> > The image is in folder "Photos" of this group:
> >
> 
http://photos.groups.yahoo.com/group/amibroker/vwp?.dir=/&.src=gr&.dnm
> > =Trailing+Stop+System.jpg&.view=t&.done=http%
> > 3a//photos.groups.yahoo.com/group/amibroker/lst%3f%26.dir=/%
> 26.src=gr%
> > 26.view=t[/img]
> >
> > I politely ask all of you to help me EXACTLY translating this
> > formula into AFL for backtesting/optimizing "nPip" possibilities.
> > I guess it would be a great chance for all of us to trade with
> > a simple but very effective trading system.
> >
> > Kindest regards
> > Robert
> >
> > Here again the formula from CMS:
> > ___________________________________________________________
> > {Trailing Stop Loss}
> >
> > TrStopLevel:=If(C=PREV, PREV, If(((Ref(C,-1)<PREV)
> > AND (C<PREV)), Min(PREV,C*(1+nPips)),If((Ref(C,-1)>PREV)
> > AND (C>PREV), Max(PREV,C*(1-nPips)), If(C>PREV,C*(1-nPips),C*
> > (1+nPips)))));
> >
> > {Signal Up and Down}
> >
> > Up:= Cross(Close,TrStopLevel);
> > Down:= Cross(TrStopLevel,C);
> >
> > {OpenBuy and CloseBuy}
> >
> > OpenBuy:=
> > Up and (eventCount('OpenBuy')= eventCount('CloseBuy'));
> > CloseBuy:=
> > Down and (eventCount('OpenBuy')>eventCount('CloseBuy'));
> >
> > {OpenSell and CloseSell}
> >
> > OpenSell:=
> > Down and (eventCount('OpenSell')= eventCount('CloseSell'));
> > CloseSell:=
> > Up and (eventCount('OpenSell')>eventCount('CloseSell'));
> > ___________________________________________________________
> >
> >
> >
> > Send BUG REPORTS to bugs@xxxx
> > Send SUGGESTIONS to suggest@xxxx
> > -----------------------------------------
> > Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx
> > (Web page: http://groups.yahoo.com/group/amiquote/messages/)
> > --------------------------------------------
> > Check group FAQ at:
> http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > Yahoo! Groups Links
> 
> 
> 
> 
> Send BUG REPORTS to bugs@xxxx
> Send SUGGESTIONS to suggest@xxxx
> -----------------------------------------
> Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx
> (Web page: http://groups.yahoo.com/group/amiquote/messages/)
> --------------------------------------------
> Check group FAQ at: 
http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> Yahoo! Groups Links



------------------------ Yahoo! Groups Sponsor ---------------------~-->
Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer at MyInks.com.  Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cid=5511
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/GHeqlB/TM
---------------------------------------------------------------------~->

Send BUG REPORTS to bugs@xxxxxxxxxxxxx
Send SUGGESTIONS to suggest@xxxxxxxxxxxxx
-----------------------------------------
Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx 
(Web page: http://groups.yahoo.com/group/amiquote/messages/)
--------------------------------------------
Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
Yahoo! Groups Links

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

<*> 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/