2022 Start working on a new website
BBS Trading Expert
Watch the Youtube BBS video and here is a crude oil trading example
Want to know more about:
AXIOM business books awards, bronze medal! Thank You!
No longer available!
Favorite articles in 2010, 11, 12, 14 and 2015 S&C Readers' Choice Awards.
AXIOM Business Books Awards, bronze medal.
HOME Back to MetaStock Formulas Overview
Looking into Wilder’s concept for the True Range – that is, the:
There are some changes I would like to introduce to come up with a higher profit than if I were using the standard trailing ATR.
1) The current high minus the current low can be big in very volatile markets. To avoid the influence of extreme moves in a day, I will limit the extreme price change of a single bar to a maximum of one and a half times the ATR moving average of the high minus low prices.
2) The absolute value of the current high minus the previous close may be distorted by a large gap between the previous high and the current low. Since a gap does give support, I would like to limit the influence of the gap. This I do by taking into account just half the size of the gap.
3) The absolute value of the current low less the previous close may also be distorted by a (big) gap between the previous low and the current high. Let’s also limit that influence taking into account only half the size of the gap.
This is the basic formula switching on stop breaks:
SVE_Stop_Trail_ModATR
period:=Input("ATR period :",1,100,10);
atrfact:=Input("ATR multiplication :",1,10,3.5);
HiLo:=If(H-L<1.5*Mov(H-L,period,S),H-L, 1.5*Mov(H-L,period,S));
Href:=If(L<=Ref(H,-1),H-Ref(C,-1),(H-Ref(C,-1))-(L-Ref(H,-1))/2);
Lref:=If(H>=Ref(L,-1),Ref(C,-1)-L,(Ref(C,-1)-L)-(Ref(L,-1)-H)/2);
diff1:=Max(HiLo,Href);
diff2:=Max(diff1,Lref);
atrmod:=Wilders(diff2,period);
loss:=atrfact*atrmod;
trail:=
If(C>PREV AND Ref(C,-1)>PREV,
Max(PREV,C-loss),
If(C<PREV AND Ref(C,-1)<PREV,
Min(PREV,C+loss),
If(C>PREV,C-loss,C+loss)));
Trail
Compare the trailing stop ATR and modified ATR with a 2.1 multiplication factor in this chart. The modified ATR trailing stop closes the position one day earlier with more profit.
Using your own trading method finding entry points you most probably would like to have this trailing stop available from your own entry date.
So, this is the MetaStock® formula for a modified ATR trailing stop long position from a starting date. Please make sure that the date you select is an existing date in the data series.
SVE_StopLongMod_Trail_ATR_Date
{SVE_StopLongMod_Trail_ATR_Date}
InpMonth:=Input("Month",1,12,1);
InpDay:=Input("Day",1,31,1);
InpYear:=Input("Year",1800,2050,2009);
InitStop:=Input("Initial Stop Price",0.1,10000,10);
period:=Input("ATR period :",1,100,5);
atrfact:=Input("ATR multiplication :",1,10,3.5);
HiLo:=If(H-L<1.5*Mov(H-L,period,S),H-L, 1.5*Mov(H-L,period,S));
Href:=If(L<=Ref(H,-1),H-Ref(C,-1),(H-Ref(C,-1))-(L-Ref(H,-1))/2);
Lref:=If(H>=Ref(L,-1),Ref(C,-1)-L,(Ref(C,-1)-L)-(Ref(L,-1)-H)/2);
diff1:=Max(HiLo,Href);
diff2:=Max(diff1,Lref);
atrmod:=Wilders(diff2,period);
loss:=atrfact*atrmod;
Entry:= InpYear=Year() AND InpMonth=Month() AND InpDay=DayOfMonth();
StopLong:=ExtFml( "AdvancedStop.StopLong", Entry,InitStop,0,C-Loss,0,0,0,0);
StopLong
Search the Internet
And this is the MetaStock® formula for an ATR modified trailing stop short position from a starting date. Please make sure that the date you select is an existing date in the data series.
SVE_StopShortMod_Trail_ATR_Date
{SVE_StopShortMod_Trail_ATR_Date}
InpMonth:=Input("Month",1,12,1);
InpDay:=Input("Day",1,31,1);
InpYear:=Input("Year",1800,2050,2009);
InitStop:=Input("Initial Stop Price",0.1,10000,10);
period:=Input("ATR period :",1,100,5);
atrfact:=Input("ATR multiplication :",1,10,3.5);
HiLo:=If(H-L<1.5*Mov(H-L,period,S),H-L, 1.5*Mov(H-L,period,S));
Href:=If(L<=Ref(H,-1),H-Ref(C,-1),(H-Ref(C,-1))-(L-Ref(H,-1))/2);
Lref:=If(H>=Ref(L,-1),Ref(C,-1)-L,(Ref(C,-1)-L)-(Ref(L,-1)-H)/2);
diff1:=Max(HiLo,Href);
diff2:=Max(diff1,Lref);
atrmod:=Wilders(diff2,period);
loss:=atrfact*atrmod;
Entry:= InpYear=Year() AND InpMonth=Month() AND InpDay=DayOfMonth();
StopShort:=ExtFml("AdvancedStop.StopShort",Entry,InitStop,0,C+Loss,0,0,0,0);
StopShort
HOME Back to MetaStock Formulas Overview
Find a Stock ticker symbol, enter the ticker and find a chart, news, fundamentals and historical quotes.
Risk Disclosure: Futures and forex trading contains substantial risk and is not for every investor. An investor could potentially lose all or more than the initial investment. Risk capital is money that can be lost without jeopardizing ones’ financial security or life style. Only risk capital should be used for trading and only those with sufficient risk capital should consider trading. Past performance is not necessarily indicative of future results.
Hypothetical Performance Disclosure: Hypothetical performance results have many inherent limitations, some of which are described below. no representation is being made that any account will or is likely to achieve profits or losses similar to those shown; in fact, there are frequently sharp differences between hypothetical performance results and the actual results subsequently achieved by any particular trading program. One of the limitations of hypothetical performance results is that they are generally prepared with the benefit of hindsight. In addition, hypothetical trading does not involve financial risk, and no hypothetical trading record can completely account for the impact of financial risk of actual trading. for example, the ability to withstand losses or to adhere to a particular trading program in spite of trading losses are material points which can also adversely affect actual trading results. There are numerous other factors related to the markets in general or to the implementation of any specific trading program which cannot be fully accounted for in the preparation of hypothetical performance results and all which can adversely affect trading results.
See more 'Legal Disclosures' in the bottom menu bar!