Louis,

All of the variables you are creating for the LineArray function are arrays
themselves. Although LineArray generates an array, it does not accept any
arrays as inputs. Additionally, your error message was probably different.
It probably went from complaining about argument #4 having the incorrect
type (which you corrected) to argument #3 having the incorrect type.

On Tue, Sep 16, 2008 at 9:10 PM, Louis P. <[EMAIL PROTECTED]> wrote:

>   Hi,
>
> Thank you for your help.
>
> @Ara:
>
> If in
>
> barhh1 = HHVBars( High, Periods ) ;
> bi1 = BarIndex();
> y11 =  LinearReg( C, barhh1 ) ;
> y01 =  LinRegIntercept( C, barhh1 ) ;
> sl1 = LineArray( bi1-barhh1+0, y01, bi1, y11, 0, True );
>
> I replace
>
> sl1 = LineArray( bi1-barhh1+0, y01, bi1, y11, 0, True );
>
> by
>
> sl1 = LineArray( bi1-barhh1+0, y01, bi1, LastValue(y11), 0, True );
>
> I still have the same error message.  I don't know from where it is
> coming.. unfortunately!
>
>
> @gp_sydney:
>
> That was a typo, you are right; I arranged that by adding a 1.  But still,
> the problem remains: the last line does not work.
>
> One day, I asked support if I needed a loop to do such LR and they said I
> should not need one.
>
> Here is the original code:
>
> barhh = SelectedValue( HHVBars( High, Periods ) );
> bi = SelectedValue( BarIndex() );
> y1 = SelectedValue( LinearReg( C, barhh ) );
> y0 = SelectedValue( LinRegIntercept( C, barhh ) );
> sl = LineArray( bi-barhh+0, y0, bi, y1, 0, True );
>
> What I want to do is simply eliminate the "selectedvalue" part and use the
> code not only for the selected data but for the whole data.  I want to be
> able to draw a line from each HHV to each bar and then work with the result.
>
> If it can't be done without a loop, I feel like I'll be lost in time again;
> last time I tried to run a loop on my computer it freezed and after 2
> minutes I decided to shut down AB...
>
>
> Thanks for the help,
>
> Louis
>
>
>
>
>
>
>
> 2008/9/16 gp_sydney <[EMAIL PROTECTED]>
>
>>   As Ara said, in the shown code snippet you don't have "barhh" defined,
>> only "barhh1".
>>
>> Beyond that, you have the same issue I mentioned originally, that the
>> linear regression functions and LineArray function take scalar values
>> (ie. single numbers) as parameters, not arrays.
>>
>> I gather you're trying to create a line from the most-recent HHV value
>> using the subsequent close data for every bar on the chart. As I don't
>> think the linear regression functions can take arrays for the period,
>> I think you'd need to use a loop and do the linear regression yourself
>> at each bar (you could call the array functions within the loop, but
>> since they fill a whole array each time, they would do a lot of
>> unnecessary work). If you do that yourself inside the loop, then at
>> each bar you'd have scalar 'x' and 'y' values to calculate the line
>> slope and so on.
>>
>> For what it's worth, the BarIndex function simply gives you the bar
>> number. It provides a way of using the current bar number in array
>> formula.
>>
>> Regards,
>> GP
>>
>>
>> --- In amibroker@yahoogroups.com <amibroker%40yahoogroups.com>, "Louis
>> P." <[EMAIL PROTECTED]> wrote:
>> >
>> > Hi,
>> >
>> > Sorry, You can replace "periods" by 50 if you wish. I just forgot to
>> > include that.
>> >
>> > barhh1 = HHVBars( High, *50* ) ;
>> > bi1 = BarIndex() ;
>> > y11 = LinearReg( C, barhh ) ;
>> > y01 = LinRegIntercept( C, barhh ) ;
>> > sl1 = LineArray( bi1-barhh1+0, y01, bi1, y11, 0, True );
>> >
>> > Still, it is not working, even if barhh1 is defined...
>> >
>> > Louis
>> >
>> > 2008/9/16 Ara Kaloustian <[EMAIL PROTECTED]>
>> >
>> > > y11 and y01 use "barhh" which is not defined.
>> > >
>> > > You have defined "barhh1"
>> > >
>> > >
>> > >
>> > > ----- Original Message -----
>> > > *From:* Louis P. <[EMAIL PROTECTED]>
>> > > *To:* amibroker@yahoogroups.com <amibroker%40yahoogroups.com>
>> > > *Sent:* Tuesday, September 16, 2008 2:46 PM
>> > > *Subject:* [amibroker] What is wrong?
>> > >
>> > > Hi,
>> > >
>> > > What is wrong in the following formula?
>> > >
>> > > barhh1 = HHVBars( High, Periods ) ;
>> > > bi1 = BarIndex() ;
>> > > y11 = LinearReg( C, barhh ) ;
>> > > y01 = LinRegIntercept( C, barhh ) ;
>> > > sl1 = LineArray( bi1-barhh1+0, y01, bi1, y11, 0, True );
>> > >
>> > >
>> > > Thanks,
>> > >
>> > > Louis
>> > >
>> > > p.s. There was "Selectedvalue" in the first four lines but I don't
>> want to
>> > > plot it on the chart based on where I am on that chart, but simply
>> set the
>> > > variable so I can use the stuff later.
>> > >
>> > >
>> > >
>> >
>>
>>
>  
>

Reply via email to