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

Re: [amibroker] Re: Mirroring the Chart



PureBytes Links

Trading Reference Links

Hello,

BarCount is number of elements in AFL array.
Its length is DYNAMIC (may change from execution to execution)
depending on chart zoom level - if you zoom in the BarCount will decrease.

BarIndex() is represents FIXED quote (bar) index. It does not change
when you zoom in/zoom out. It may only change when you add new quotations
to the database or when you change the interval (for example daily to intraday).

Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message ----- 
From: "brian.z123" <brian.z123@xxxxxxxxxxxx>
To: <amibroker@xxxxxxxxxxxxxxx>
Sent: Saturday, March 03, 2007 10:49 AM
Subject: [amibroker] Re: Mirroring the Chart


> Robert,
> 
> I plot everything that I can to help with understanding.
> 
> Actually barcount doesn't plot so well; it only consistently works 
> when you first insert it (Tomasz will be tearing his hair out seeing 
> me recommend plotting it). It does, however, show clearly what it is 
> about in that one instance (a constant = = the total number of bars) 
> whereas barindex() is the zerobased progressive count = = periods.
> 
> The lastvalue of barindex() = = lastvalue of barcount -1
> 
> BrianB2.
> 
> --- In amibroker@xxxxxxxxxxxxxxx, "rhoemke" <robert@xxx> wrote:
>>
>> hi Brian,
>> 
>> plotting is a good idea.
>> 
>> Users Guide says:
>> Barcount vs BarIndex()
>> There is a fundamental difference between BarCount and BarIndex().
>> BarCount is a numeric variable that
>> holds just one number (the count of elements in array). On the other
>> hand BarIndex() is a function that returns
>> ARRAY representing consecutive index of each bar.
>> 
>> Seems i misunderstood.
>> 
>> Let's see what the plot shows.
>> 
>> Regards
>> Robert
>> 
>> --- In amibroker@xxxxxxxxxxxxxxx, "brian.z123" <brian.z123@> wrote:
>> >
>> > Hello Robert,
>> > 
>> > No.
>> > 
>> > No problemo!
>> > 
>> > If you plot barcount and barindex you will see it works a little 
>> > differently than you think.
>> > 
>> > BrianB2.
>> > 
>> > --- In amibroker@xxxxxxxxxxxxxxx, "rhoemke" <robert@> wrote:
>> > >
>> > > It seems that there is at least a problem with Barcount and 
> BarIndex
>> > ().
>> > > As i understand, Barcount is just a number, showing the total 
> number
>> > > of bars in the chart (starts counting at 0), and BarIndex() 
> shows 
>> > the
>> > > actual number of the single bar.
>> > > But this code shows  different figures even for BarCount at 
> selected
>> > > bar and i don't know why.
>> > > Anybody who can help?
>> > > 
>> > > SBI = SelectedValue(BarIndex()); 
>> > > "Selected BarIndex = "+WriteVal(SBI);
>> > > "BarCount = "+WriteVal(BarCount);
>> > > 
>> > > 
>> > > Regards
>> > > Robert
>> > > --- In amibroker@xxxxxxxxxxxxxxx, "rhoemke" <robert@> wrote:
>> > > >
>> > > > Thank you Zoli,
>> > > > 
>> > > > what i try to do is to mirror horizontaly at the avg of 
> selected 
>> > bar
>> > > > AND vertically from selected bar.
>> > > > This is why i think i need the loop.
>> > > > 
>> > > > I try to mirror the past into the future, as it is described 
> in 
>> > Welles
>> > > > Wilders Book about Adam Theory.
>> > > > 
>> > > > Regards Robert 
>> > > > 
>> > > > 
>> > > > 
>> > > > --- In amibroker@xxxxxxxxxxxxxxx, "zoli_j" <novizoli@> wrote:
>> > > > >
>> > > > > mySelectedBI = SelectedValue(BarIndex());
>> > > > > WriteVal(mySelectedBI);
>> > > > > 
>> > > > > myMirrorHorizontalValue = ValueWhen(BarIndex() == 
> mySelectedBI, 
>> > Avg);
>> > > > > Plot(myMirrorHorizontalValue, "myMHV", colorBlue, 
> styleLine);
>> > > > > 
>> > > > > myDiffO = O - myMirrorHorizontalValue;
>> > > > > myDiffH = H - myMirrorHorizontalValue;
>> > > > > myDiffL = L - myMirrorHorizontalValue;
>> > > > > myDiffC = C - myMirrorHorizontalValue;
>> > > > > //PlotOHLC(myDiffO, myDiffH, myDiffL, myDiffC, "myDiff", 
>> > colorBlue, 
>> > > > > styleCandle);
>> > > > > 
>> > > > > myO = IIf(NOT IsNull(myMirrorHorizontalValue), 
>> > > > > myMirrorHorizontalValue - myDiffO, O);
>> > > > > myH = IIf(NOT IsNull(myMirrorHorizontalValue), 
>> > > > > myMirrorHorizontalValue - myDiffH, H);
>> > > > > myL = IIf(NOT IsNull(myMirrorHorizontalValue), 
>> > > > > myMirrorHorizontalValue - myDiffL, L);
>> > > > > myC = IIf(NOT IsNull(myMirrorHorizontalValue), 
>> > > > > myMirrorHorizontalValue - myDiffC, C);
>> > > > > 
>> > > > > BR, Zoli.
>> > > > > 
>> > > > > PlotOHLC(O, H, L, C, "PriceChart", colorBlack, styleCandle);
>> > > > > PlotOHLC(myO, myH, myL, myC, "MirroRchart", colorBlue, 
>> > styleCandle);
>> > > > > 
>> > > > > --- In amibroker@xxxxxxxxxxxxxxx, "rhoemke" <robert@> wrote:
>> > > > > >
>> > > > > > Hello,
>> > > > > > i am trying to mirror the chart from the selected bar.
>> > > > > > 
>> > > > > > My code is this, but it doesn't plot a chart but only a 
>> > single bar.
>> > > > > > Can someone see what is wrong. It is difficult for me to 
>> > describe in
>> > > > > > english how the mirroring idea works, but maybe the code 
>> > shows it.
>> > > > > > 
>> > > > > > Thank you.
>> > > > > > 
>> > > > > > selectedBI  = SelectedValue(BarIndex()); WriteVal
> (SelectedBI);
>> > > > > > mirroropen  = 0;
>> > > > > > mirrorhigh  = 0;
>> > > > > > mirrorlow   = 0;
>> > > > > > mirrorclose = 0;
>> > > > > > WriteVal(BarCount-SelectedBI-1);
>> > > > > > 
>> > > > > > for (i = 0;i<BarCount-1;i++);
>> > > > > > {
>> > > > > > if(i>=selectedBI)
>> > > > > > {
>> > > > > > mirroropen[i]  =  2*Avg[SelectedBI] - O[2*SelectedBI-i];
>> > > > > > mirrorhigh[i]  =  2*Avg[SelectedBI] - H[2*SelectedBI-i];
>> > > > > > mirrorlow[i]   =  2*Avg[SelectedBI] - L[2*SelectedBI-i];
>> > > > > > mirrorclose[i] =  2*Avg[SelectedBI] - C[2*SelectedBI-i];
>> > > > > > }
>> > > > > > else
>> > > > > > {
>> > > > > > mirroropen[i]  =  O[i];
>> > > > > > mirrorhigh[i]  =  H[i];
>> > > > > > mirrorlow[i]   =  L[i];
>> > > > > > mirrorclose[i] =  C[i];
>> > > > > > }
>> > > > > > }
>> > > > > > 
>> > > > > > 
>> > > > > > 
>> > > > > > PlotOHLC(mirroropen, mirrorhigh, mirrorlow, mirrorclose,
>> > > > > > "Mirrorchart", colorBlue);
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>>
> 
> 
> 
> 
> 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
> 
> 
> 
> 
>


------------------------ Yahoo! Groups Sponsor --------------------~--> 
Transfer from your equities account.  
Receive up to $1,000 from GFT. Click here to learn more.
http://us.click.yahoo.com/aZttyC/X_xQAA/cosFAA/GHeqlB/TM
--------------------------------------------------------------------~-> 

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/