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

[amibroker] Re: Getting AB to keep TABS of yre TRADE once active



PureBytes Links

Trading Reference Links


I'm a pretty shallow thinker when it comes to coding and maybe I'm 
misunderstanding the problem, but VALUEWHEN wouldn't work 
in "remembering" the entry price for other/later references?


Luck,

Sebastian

--- In amibroker@xxxxxxxxxxxxxxx, "moztrader" <das300@xxxx> wrote:
> 
> OK,
> Here is the CODE solution for the below problem to solve e) be it
> possibly a non elegant way it  works well ...
> 
> |||||||||||||||||||__bacround to problem__|||||||||||||||||||||||
> 
> Initially a MS user I now have
> a) converted all my MS formulas to AB -------------------->DONE
> 
> b) learned how to pull metastock data into AB - easy
> bit-------------------------------------------------------->DONE
> 
> c) created PLOTS for tools-------------------------------->DONE
> 
> d) created Scans for BUYS -------------------------------->DONE
> 
> now I'm up to 
> e) created SCANS to monitor for SELLS of ACTUAL TRADES still live 
> 
> |||||||||||___The PROBLEM ____||||||||||||||||||||||
> As I my TRADE SYSTEM have continual entries the problem is telling 
AB
> which trade entry to base the EXIT on so I can scan every day for 
EXIT
> rather than look at every EQUITY position im in . AS an example 
> initial stop is totally based on ENTRY day and LEVEL . If you read 
the
> below end a post i sent earlier tells how trying to Identify the 
ENTRY
> based on PARAM (say uset a date and purchase level ) seems useless 
as
> every equity has that param level. I needed to find an individualway
> of labelling the ENTRY day and time. I have not had any response 
from
> AB so I figured I would continue trying to fix it. I found it 
using "
> line STUDY "  If I drew a line with right extension , lock, STUDY ID
> "SU" I could tell AB exactly the day from which to PLOT EXITS ( 
> mainly the highest of 
> a) Init STOP
> b) Prof Trailing STOp
> c) Normal trade STOP ( similar to inverse chandaleir type ) 
> 
> Below is the code for this solution and the method I use to keep 
track
> of ACTIVE trades- 
> 
> Trading Procedure - 
> 
> When I perform a trade I :
> 
> T1) get code below and create a worksheet (this is done only 
once !) 
> T2) place that equity in a TRADE BIN WATCHLIST
> T3) draw a line on sheet with 
>           T3.1 RIGHT extension checked
>           T3.2 Study ID = SU
>           T4.3 Trade date entered as first date and level bought
> T4) U shuld see an exit plot now
> T5) U can scan this watchlist for SELLS which = when Low breaks the
> EXIT plot .
> 
> :-) Hope this helps someone as it did me 
> 
> --------------------8<------8<---------------------------
> 
> 
> Title = " zMF_HLV_AP_exitSTOP \n RED=INITstop,yellow 
=trailSTOP,gren=
> LLV" ;
> 
> //Instructions ----
> // drawline starting from trade date and 
> // level entered onto workspace , tick right extension AND label 
it "SU" 
> // if inserting onto a blank workspace add chart ID you want the
> Function to look at by looking up param function.
> 
> 
> //||||||||||||||||||||||||||||||||||||||||||____Draw
> 
OHCL___|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||
> SetChartOptions(0,chartShowArrows);
> mm = IIf(C > Ref(C,-1) , colorGreen,colorRed) ;
> Plot( C, "Close", mm, styleNoTitle | ParamStyle("Style", styleBar,
> maskPrice ) );
> 
> 
> // CALC STOP PARAMS
> 
> INSTOP= Param( "Initi STOP %", 20, 0, 100, 1 ) ; //SET INIT STOP as 
20%
> TRSTOP= Param( "TRAIL STOP %", 33, 0, 100, 1 ) ; //SET TRAIL STOP 
as 20%
> CHID = Param( "CHART ID obtain from param menu", 0, 0, 2000, 1 ) ;
> //get ID do not need to use unless u reference a different LINE page
> LLVperd = Param( "LLVperd", 57, 0, 200, 1 ) ; //get LLV PERD
> 
> ///calc when to print LINE starting from date of trade
> 
> ID = IIf( CHID > 0 , CHID , GetChartID() )  ; //finds CHART ID
> Line = Study( "su" ,id ) ; // locates line
> Lineval = IsEmpty( Line ) ; // when line is valid
> 
> //|||||||||||||||||||||____calc LINES
> ____|||||||||||||||||||||||||||||||||||||||||||||||||||||
> 
> Hipoint = IIf( lineval == 0 ,  HighestSince( Lineval, H , 
1) ,Null ) ;
>    // calc highest point since trade date
> TRAILSTOP = Hipoint * ( 100 - TRstop )/100 ; // calc 33% TRAILING
> Profit STOP
> INITSTOP = Line * ( 100 - instop )/100 ; // calc 20% INTI_STOP
> LLVline = IIf( lineval ==0 ,  LLV( L,LLVperd) ,Null)  ;
> 
> //|||||||||||||||||||||____determine highest EXIT line or level and
> COLOR  ____|||||||||||||||||||||||||||
> 
> Hiline  =  IIf( initstop > LLVline , initstop , LLVline )  ;
> Hiline1 = IIf( TRAILstop > HiLINE , TrailSTOP , Hiline ) ;
> 
> Hilinecol  =  IIf( initstop > LLVline , colorRed , colorGreen )  ;
> Hiline1col = IIf( TRAILstop > HiLINE , colorYellow , Hilinecol ) ;
> 
> //||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
> // SCAN to track EXITs
> 
> Buy =0 ;
> Sell = L < Ref( HiLine1 , -1 )  ;
> 
> //||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
> 
> "ID = " + WriteVal(ID,1.2) ;
> AddColumn(Sell, "sell",1.2) ;
> 
> //||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
> // PLOT
> 
> Plot( Hiline1,"HILINE1",HiLINE1col,styleDashed ) ;
> 
> --------------------8<------8<---------------------------
> 
> 
> --- In amibroker@xxxxxxxxxxxxxxx, "moztrader" <das300@xxxx> wrote:
> > 
> > Please drag the below formula onto a share .
> > Set the date of yre trade and adjust the price to the bought 
price.
> > Set the STOP LOSS % and TRAIL PROFIT STOP.
> > I developed it to keep a tab of 
> > 
> > a) Highest (since trade date) - 33% level: a running 33% PROFIT 
STOP 
> > 
> > b) TRADE entry level - dashed line
> > 
> > This tool helps input INITSTOP loss and Profit TRAILING STOP data 
into
> > my trade platform but I am having difficulty getting it to work 
as I
> > want .
> > 
> > The problem is when I adjust the date and trade amount parameter 
on
> > say msft changing to the next traded equity has the changed 
paramter
> > data as well. So all trades adjust to the same date . I have 
10xtrades
> > i want to continously monitor STOP and PROFIT EXITS. I  cannot 
think
> > of how scan, explore or Functions can store individual entry 
dates and
> >  buy prices .
> > 
> > I want this function to have its parameters set according to the
> > EQUITY not the worksheet . What I need is to overlay this Function
> > into a OHCL window and have it customizable like say a drawn 
line . A
> > drawn line is  individual to the stock your drawing on. When you
> > change the equity the drawline does not follow onto the next 
worksheet
> > display. If you have drawn 2 lines ,one on each equity they appear
> > seperate and do not affect each other. The param function doesnt 
seem
> > to have a global or individual setting for equities. 
> > Maybe I have missed some way to do this but what comes to mind is 
a
> > variable like Local_param that adjusts to the equity only.
> > 
> > Is there anyway I can do this without asking for a software 
upgrade  ?
> > 
> > Thanks
> > 
> > Maurice
> > 
> > 
> > //--------------------------------8<------------------------------
-
> > 
> > Title = " zMF_HLV_AP_exitSTOP" ;
> > 
> > //calc DATE PARAMS
> > 
> > ppDd = Param( "PPday", 5, 1, 31,1 ) ;
> > 
> > ppMm = Param( "PP Month", 01, 1, 12,1 ) ;
> > 
> > ppyy = Param( "PP Year", 2005, 1900, 2050,1 ) ;
> > 
> > ///calc when to print LINE starting from date of trade
> > 
> > rightday = IIf( Year() == ppyy AND Month() == ppmm AND Day() == 
ppdd
> > ,1 , 0 ) ; 
> > 
> > rightdaylatch = Cum( IIf( Year() == ppyy AND Month() == ppmm AND 
Day()
> > == ppdd ,1 , 0 ) ) ; 
> > 
> > Hipoint = HighestSince( rightday == 1, H , 1) ;// calc highest 
point
> > since trade date
> > 
> > vw = ValueWhen( rightday == 1 , C , 1 ) ;// value of close since 
TRADE
> > date
> > 
> > 
> > 
> > PrPaid = Param( "PricePAID adjust +/- from the close ", 0, -100, 
100,
> > 0.01 ) ;// allows adjustmet of price paid from close
> > 
> > prpaid = prpaid + VW ; 
> > 
> > INSTOP= Param( "Initi STOP %", 20, 0, 100, 1 ) ; //SET INIT STOP 
as 20%
> > TRSTOP= Param( "TRAIL STOP %", 33, 0, 100, 1 ) ; //SET TRAIL STOP 
as 20%
> > 
> > Pricepaid = IIf( rightdaylatch == 1 ,prpaid , Null ) ;// make 
valid if
> > the date > TRADE date
> > 
> > TRAILSTOP = Hipoint * ( 100 - TRstop )/100 ; // calc 33% TRAILING
> > Profit STOP
> > INITSTOP = Pricepaid * ( 100 - instop )/100 ; // calc 20% 
INTI_STOP
> > 
> >
> //|||||||||||||||||||||____PLOT____|||||||||||||||||||||||||||||||||
||||||||||||||||||||
> > 
> > piccolor = ParamColor("pricepaid", colorLightGrey ) ; 
> > 
> > piccolor1 = ParamColor("INITSTOP", colorRed ) ; 
> > piccolor2 = ParamColor("TRAIL STOP", colorGreen) ; 
> > 
> > Plot( pricepaid,"Price Paid",piccolor,styleDashed ) ;
> > 
> > Plot( initstop,"INIT STOP",piccolor1,styleLine ) ;
> > 
> > Plot( trailSTOP,"TRAIL STOP",piccolor2,styleLine ) ;
> > //--------------------------------8<------------------------------
-
> > 
> > 
> > > 
> > > thanks for reading
> > > 
> > > Regards,
> > > Maurice
> > > australia
> > > 
> > >





------------------------ Yahoo! Groups Sponsor --------------------~--> 
In low income neighborhoods, 84% do not own computers.
At Network for Good, help bridge the Digital Divide!
http://us.click.yahoo.com/EpW3eD/3MnJAA/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 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/

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