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