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

Re: [amibroker] Re: Declare variable for future use: Left/Right side of the formula



PureBytes Links

Trading Reference Links

Mike,

Although you haven't described what you are trying to do I will guess:
you are trying to buy only when previous trade was loosing one.

Don't you see the logic error here?

What about the very first trade - since there is no "Previous" trade
a buy signal will NEVER occur.

You have to re-formulate this idea to make it work.

Buy = ... entry rule...
Sell = .... exit rule...

TheoreticalProfit = ValueWhen( Sell, SellPrice ) - ValueWhen( Buy, BuyPrice, 2 ) 

Buy = Buy AND TheoreticalProfit < 0;

Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message ----- 
From: "mik954" <mik-u@xxxx>
To: <amibroker@xxxxxxxxxxxxxxx>
Sent: Tuesday, April 23, 2002 5:30 PM
Subject: [amibroker] Re: Declare variable for future use: Left/Right side of the formula


> Hi, Mike,
> 
> Thank you for the idea. Here is my usage:
> 
> // var tradeProfit; // declare variable for future use
> Buy = longEntry and ValueWhen(Sell, tradeProfit) < 0;
> Sell = LongExit;
> tradeProfit = ValueWhen(Sell, SellPrice) - ValueWhen(Buy, BuyPrice);
> 
> May be you idea about setting to Close will work. When I tried to 
> initialize tradeProfit array with 0, it didn't return correct value 
> in ValueWhen() function: allways 0.
> 
> Thanks,
> Mike
> 
> 
> --- In amibroker@xxxx, Mike Pham <mmqp@xxxx> wrote:
> > without much knowing of your usages; I would think
> > you could always create a dummy array and use it on
> > the right side of the formula.
> > 
> > dummy = Close; // this is to create the dummy array
> > and initialize them with close datas.
> > 
> > ABformula = dummy;
> > 
> > regards.
> > --- mik954 <mik-u@xxxx> wrote:
> > > Tomasz,
> > > 
> > > Thank you for the links describing AFL arrays.
> > > 
> > > But I still don't know how I can benefit from
> > > AMA/AMA2 functions to 
> > > fix my problem.
> > > 
> > > The problem is how to obtain a value from an array
> > > using ValueWhen() 
> > > function (on the right side of the formula) before
> > > setting/defining 
> > > this array on the left side of the formala.
> > > 
> > > In Excel I don't need to declare any rows/columns:
> > > they are all 
> > > predefined. Therefore I can use any new row/column
> > > on the left and 
> > > right side of the formula at any time.
> > > 
> > > As I understand in AFL I CANNOT use an array on the
> > > right side of the 
> > > formula before using it on the left side.. That's my
> > > PROBLEM. 
> > > 
> > > A simle fix would be using some kind of declaration
> > > (var for example, 
> > > like in VB/JS Script) to allow using of array on the
> > > right side of 
> > > the formula.
> > > 
> > > Thanks,
> > > Mike
> > > 
> > > 
> > > 
> > > 
> > > 
> > > --- In amibroker@xxxx, "Tomasz Janeczko"
> > > <amibroker@xxxx> wrote:
> > > > Mike,
> > > > 
> > > > There are numerous possibilities to reference
> > > previous value of the 
> > > indicator or any array.
> > > > Please check out
> > > http://www.amibroker.net/boards/viewtopic.php?t=81 
> > > for the details.
> > > > 
> > > > Best regards,
> > > > Tomasz Janeczko
> > > > amibroker.com
> > > > ----- Original Message ----- 
> > > > From: "mik954" <mik-u@xxxx>
> > > > To: <amibroker@xxxx>
> > > > Sent: Tuesday, April 23, 2002 2:15 AM
> > > > Subject: [amibroker] Re: Declare variable for
> > > future use: No way in 
> > > AFL?
> > > > 
> > > > 
> > > > > Tomasz,
> > > > > 
> > > > > You mean that I cannot use REF() function to get
> > > a previous 
> > > element 
> > > > > of an ARRAY mentioned later in the code?
> > > > > 
> > > > > So in AFL there is no way to use a previous
> > > value of a variable 
> > > to 
> > > > > define its new value? What a disappointment. Is
> > > there any 
> > > workaround?
> > > > > 
> > > > > Thanks,
> > > > > Mike
> > > > > 
> > > > > 
> > > > > --- In amibroker@xxxx, "Tomasz Janeczko"
> > > <amibroker@xxxx> wrote:
> > > > > > Mike,
> > > > > > 
> > > > > > No, AFL operates on entire arrays and it uses
> > > only single-pass 
> > > to 
> > > > > process all bars.
> > > > > > So if you assign a value later in your code it
> > > will have no 
> > > effect 
> > > > > on any lines that appeared
> > > > > > before.
> > > > > > 
> > > > > > Best regards,
> > > > > > Tomasz Janeczko
> > > > > > amibroker.com
> > > > > > ----- Original Message ----- 
> > > > > > From: "mik954" <mik-u@xxxx>
> > > > > > To: <amibroker@xxxx>
> > > > > > Sent: Monday, April 22, 2002 6:13 PM
> > > > > > Subject: [amibroker] Declare variable for
> > > future use (was TJ: 
> > > > > Actual trade profit vs. Theoretical)
> > > > > > 
> > > > > > 
> > > > > > > Hi, all!
> > > > > > > 
> > > > > > > Well, so far no any response on my initial
> > > post (even on 
> > > direct e-
> > > > > > > mail to support@xxxx). It's weird. Maybe my
> > > question wasn't 
> > > > > > > clear, or Tomasz was too busy.
> > > > > > > 
> > > > > > > OK, let me ask in a different way. Is there
> > > any way in AFL to 
> > > > > declare 
> > > > > > > variable/array and use its previos value
> > > before setting 
> > > current 
> > > > > one?
> > > > > > > 
> > > > > > > I mean:
> > > > > > > 
> > > > > > > // var tradeProfit; // declare variable for
> > > future use
> > > > > > > 
> > > > > > > Buy = longEntry and ValueWhen(Sell,
> > > tradeProfit) < 0;
> > > > > > > Sell = LongExit;
> > > > > > > 
> > > > > > > tradeProfit = ValueWhen(Sell, SellPrice) -
> > > ValueWhen(Buy, 
> > > > > BuyPrice);
> > > > > > > 
> > > > > > > 
> > > > > > > Any suggestions are welcome.
> > > > > > > 
> > > > > > > Thanks,
> > > > > > > Mike
> > > > > > > 
> > > > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > Your use of Yahoo! Groups is subject to 
> > > http://docs.yahoo.com/info/terms/ 
> > > > > 
> > > > > 
> > > > >
> > > 
> > > 
> > 
> > 
> > __________________________________________________
> > Do You Yahoo!?
> > Yahoo! Games - play chess, backgammon, pool and more
> > http://games.yahoo.com/
> 
> 
> 
> 
> 
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/ 
> 
> 
>