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

[EquisMetaStock Group] Re: Coding for QQE expert



PureBytes Links

Trading Reference Links

bharat,

I'd like to help but the information you have provided doesn't give 
any idea about the lookback periods to set for the indicators.

The indicators themself aren't a problem. They are standard 
indicators and already programmed into metastock. If you can find 
out any more information or offer a website where we can find out 
more information maybe we can be of more help.

Preston



--- In equismetastock@xxxxxxxxxxxxxxx, bharat_parth2005 
<no_reply@xxx> wrote:
>
> Hi PUMRYSH,
> 
> I SOUGHT  HELP FROM FRIENDS IN MY GROUP ,WHO ARE CONVERSANT WITH 
> CODING BUT COULD NOT GET CODE FOR QQE.
> 
> Pl. HELP.
> 
> Bharat--- In equismetastock@xxxxxxxxxxxxxxx, pumrysh <no_reply@> 
> wrote:
> >
> > That's odd, when I check the site I can find the Stoch, MACD, 
and 
> > RSI. 
> > 
> > You're right though, there is no QQE. Seems you will have to 
write 
> > that one yourself.
> > 
> > Preston
> > 
> > 
> > 
> > --- In equismetastock@xxxxxxxxxxxxxxx, bharat_parth2005 
> > <no_reply@> wrote:
> > >
> > > Dear Pumrysh
> > > 
> > > QQE not found on link provided by you.
> > > 
> > > bharat--- In equismetastock@xxxxxxxxxxxxxxx, pumrysh 
<no_reply@> 
> > > wrote:
> > > >
> > > > Formulas are here:
> > > > 
> > > > http://trader.online.pl/MSZ/!-MSZ-index.html
> > > > 
> > > > 
> > > > --- In equismetastock@xxxxxxxxxxxxxxx, bharat_parth2005 
> > > > <no_reply@> wrote:
> > > > >
> > > > > I found following code for QQE on net for vttrader.I need 
MS 
> > code
> > > > > 
> > > > > Barnum:= BarCount();
> > > > > Err:= (tp1=0) or (tp2=0) or (rsitpr=0) or (Sh=0) or (Lg=0) 
> or 
> > > (K=0) 
> > > > > or (D=0) or (stochsl=0);
> > > > > 
> > > > > {Moving Averages}
> > > > > 
> > > > > ShortMA:= mov(pr1,tp1,mTp1);
> > > > > LongMA:= mov(pr2,tp2,mTp2);
> > > > > 
> > > > > {Relative Strength Index}
> > > > > 
> > > > > rsi_r:= (rsipr - ref(rsipr,-1));
> > > > > rsi_rs:= Wilders(if(rsi_r>0,rsi_r,0),rsitpr) / Wilders(if
> > > > (rsi_r<0,Abs
> > > > > (rsi_r),0),rsitpr);
> > > > > RSIndex:= 100-(100/(1+rsi_rs));
> > > > > RSIML:= 50;
> > > > > 
> > > > > {MACD}
> > > > > 
> > > > > FL:= Mov(spr,Sh,smat) - Mov(lpr,Lg,lmat);
> > > > > SL:= Mov(FL,sig,sigmat);
> > > > > OsMA:= FL-SL;
> > > > > 
> > > > > {Slow Stochastic Oscillator}
> > > > > 
> > > > > StK:= ((C-LLV(L,K))/(HHV(H,K)-LLV(L,K)))*100;
> > > > > StDK:= Mov(StK,stochSl,MtK);
> > > > > StDD:= Mov(StDK,D,DMt);
> > > > > StochUp:= 80;
> > > > > StochDown:= 20;
> > > > > 
> > > > > {Do NOT change the NAMES of the Variables below.
> > > > > If you Changed The NAMES of Indicator1 or Indicator2,
> > > > > you will have to change them below.}
> > > > > 
> > > > > {Define Final Trade Entry/Exit Criteria}
> > > > > 
> > > > > LongEntryCond1:= ShortMA>LongMA;
> > > > > LongEntryCond2:= FL>SL;
> > > > > LongEntryCond3:= RSIndex>RSIML;
> > > > > LongEntryCond4:= StDK>StDD;
> > > > > 
> > > > > ShortEntryCond1:= ShortMA<LongMA;
> > > > > ShortEntryCond2:= FL<SL;
> > > > > ShortEntryCond3:= RSIndex<RSIML;
> > > > > ShortEntryCond4:= StDK<StDD;
> > > > > 
> > > > > LongEntrySetup:= Cross
> > > > > 
> > > 
> 
((LongEntryCond1+LongEntryCond2+LongEntryCond3+LongEntryCond4),3.5);
> > > > > LongExitSetup:= Cross
> > > > > 
> > > > 
> > > 
> > 
> 
((ShortEntryCond1+ShortEntryCond2+ShortEntryCond3+ShortEntryCond4),3.
> > > > > 5);
> > > > > 
> > > > > ShortEntrySetup:= Cross
> > > > > 
> > > > 
> > > 
> > 
> 
((ShortEntryCond1+ShortEntryCond2+ShortEntryCond3+ShortEntryCond4),3.
> > > > > 5);
> > > > > ShortExitSetup:= Cross
> > > > > 
> > > 
> 
((LongEntryCond1+LongEntryCond2+LongEntryCond3+LongEntryCond4),3.5);
> > > > > 
> > > > > {***********************************************}
> > > > > 
> > > > > {That's it! You're done! There is no need to
> > > > > edit below this point.}
> > > > > 
> > > > > {***********************************************}
> > > > > 
> > > > > {Determine the Pip Value for the currency chart being used}
> > > > > 
> > > > > _SymbolPoint:= SymbolPoint();
> > > > > 
> > > > > _InitialStoploss:= InitialStoploss * _SymbolPoint;
> > > > > _BEP:= BEP * _SymbolPoint;
> > > > > _TrailingStoploss:= TrailingStoploss * _SymbolPoint;
> > > > > _ProfitTarget:= ProfitTarget * _SymbolPoint;
> > > > > _Spread:= Spread * _SymbolPoint;
> > > > > 
> > > > > {Define Active Market Hours for Taking Trade Entries}
> > > > > {For Example: StartHour=2 and StartMinute=0 will allow 
trade 
> > > > entries 
> > > > > beginning at 2:00 AM EST}
> > > > > {For Example: EndHour=14 and EndMinute=30 will allow trade 
> > > entries 
> > > > > until 2:30 PM EST}
> > > > > 
> > > > > _hour:= hour();
> > > > > _minute:= minute();
> > > > > 
> > > > > TradingSessionOnStart:= _hour=StartHour and 
> > _minute>=StartMinute;
> > > > > TradingSessionOnEnd:= _hour=EndHour and _minute>=EndMinute;
> > > > > TradingSessionOn:= SignalFlag
> > > > > (TradingSessionOnStart,TradingSessionOnEnd);
> > > > > TradingSessionOff:= 1;
> > > > > TradeEntryTimeFilter:= if(TradeEntryTimeFilterMode=0, 
> > > > > TradingSessionOn, TradingSessionOff);
> > > > > 
> > > > > TradeEntryTimeFilterNotEnabled:= TradeEntryTimeFilter=0;
> > > > > TradeEntryTimeFilterEnabled:= TradeEntryTimeFilter=1;
> > > > > 
> > > > > {***********************************************}
> > > > > 
> > > > > LongEntrySignal:= (NOT Err AND LongTradeAlert=0 AND 
> > > > > ShortTradeAlert=0 AND TradeEntryTimeFilter=1 AND 
> > LongEntrySetup) 
> > > OR
> > > > >                   (NOT Err AND LongTradeAlert=0 AND Cross
> > > > > (0.5,ShortTradeAlert) AND TradeEntryTimeFilter=1 AND 
> > > > LongEntrySetup) 
> > > > > OR
> > > > >                   (NOT Err AND LongTradeAlert=0 AND 
> > > > > TradeEntryTimeFilter=1 AND ShortExitSetup);
> > > > > 
> > > > > LongEntryPrice:= valuewhen(1,LongEntrySignal,C) + _Spread;
> > > > > BarsSinceLongEntry:= BarsSince(LongEntrySignal);
> > > > > 
> > > > > LongEntryInitialStop:= if(LongTradeAlert=1 OR 
> LongEntrySignal 
> > OR 
> > > > > LongExitSignal, LongEntryPrice - _InitialStoploss, null);
> > > > > DisplayLongEntryInitialStop:= if(InitialStoplossMode=0, 
> > > > > LongEntryInitialStop, null);
> > > > > 
> > > > > LongEntryBEStoplossFlag:= SignalFlag(LongTradeAlert=1 AND 
C 
> >= 
> > > > > (LongEntryPrice + _BEP), LongExitSignal);
> > > > > LongEntryBEStoploss:= if(LongEntryBEStoplossFlag=1 OR 
> > > > > LongEntrySignal OR LongExitSignal, LongEntryPrice, null);
> > > > > DisplayLongEntryBEStoploss:= if(BEStoplossMode=0, 
> > > > > LongEntryBEStoploss, null);
> > > > > 
> > > > > LongEntryPipTrailingStop:= if(LongTradeAlert=1 OR 
> > > LongEntrySignal 
> > > > OR 
> > > > > LongExitSignal, max((C - _TrailingStoploss), PREV
> > > (LongEntryPrice - 
> > > > > _TrailingStoploss)), null);
> > > > > LongEntryATRTrailingStop:= if(LongTradeAlert=1 OR 
> > > LongEntrySignal 
> > > > OR 
> > > > > LongExitSignal, max(HHV(H,BarsSinceLongEntry) - (ATR
(ATRper) 
> * 
> > > > > atrmultiplier), PREV(valuewhen(1,LongEntrySignal,H) - (ATR
> > > (ATRper) 
> > > > * 
> > > > > atrmultiplier))), null);
> > > > > DisplayLongEntryTrailingStop:= if(TrailingStoplossMode=0 
AND 
> > > > > TrailingStoplossType=1, LongEntryPipTrailingStop,
> > > > >                                if(TrailingStoplossMode=0 
AND 
> > > > > TrailingStoplossType=0, LongEntryATRTrailingStop,
> > > > >                                null));
> > > > > 
> > > > > LongEntryProfitTarget:= if(LongTradeAlert=1 OR 
> LongEntrySignal 
> > > OR 
> > > > > LongExitSignal, LongEntryPrice + _ProfitTarget, null);
> > > > > DisplayLongEntryProfitTarget:= if(ProfitTargetMode=0, 
> > > > > LongEntryProfitTarget, null);
> > > > > 
> > > > > LongExitSignal:= (LongTradeAlert=1 AND 
InitialStoplossMode=0 
> > AND 
> > > > > Cross(LongEntryInitialStop,C))
> > > > >               OR (LongTradeAlert=1 AND BEStoplossMode=0 
AND 
> > Cross
> > > > > (LongEntryBEStoploss,C))
> > > > >               OR (LongTradeAlert=1 AND 
> TrailingStoplossMode=0 
> > > AND 
> > > > > TrailingStoplossType=1 AND Cross
(LongEntryPipTrailingStop,C))
> > > > >               OR (LongTradeAlert=1 AND 
> TrailingStoplossMode=0 
> > > AND 
> > > > > TrailingStoplossType=0 AND Cross
(LongEntryATRTrailingStop,C))
> > > > >               OR (LongTradeAlert=1 AND ProfitTargetMode=0 
> AND 
> > > Cross
> > > > > (C,LongEntryProfitTarget))
> > > > >               OR (LongTradeAlert=1 AND LongExitSetup);
> > > > > 
> > > > > LongExitPrice:= valuewhen(1,LongExitSignal,C);
> > > > > 
> > > > > ShortEntrySignal:= (NOT Err AND ShortTradeAlert=0 AND 
> > > > > LongTradeAlert=0 AND TradeEntryTimeFilter=1 AND 
> > ShortEntrySetup) 
> > > OR
> > > > >                    (NOT Err AND ShortTradeAlert=0 AND Cross
> > > > > (0.5,LongTradeAlert) AND TradeEntryTimeFilter=1 AND 
> > > > ShortEntrySetup) 
> > > > > OR
> > > > >                    (NOT Err AND ShortTradeAlert=0 AND 
> > > > > TradeEntryTimeFilter=1 AND LongExitSetup);
> > > > > 
> > > > > ShortEntryPrice:= valuewhen(1,ShortEntrySignal,C);
> > > > > BarsSinceShortEntry:= BarsSince(ShortEntrySignal);
> > > > > 
> > > > > ShortEntryInitialStop:= if(ShortTradeAlert=1 OR 
> > ShortEntrySignal 
> > > OR 
> > > > > ShortExitSignal, ShortEntryPrice + _InitialStoploss - 
> _Spread, 
> > > > null);
> > > > > DisplayShortEntryInitialStop:= if(InitialStoplossMode=0, 
> > > > > ShortEntryInitialStop, null);
> > > > > 
> > > > > ShortEntryBEStoplossFlag:= SignalFlag(ShortTradeAlert=1 
AND 
> C 
> > <= 
> > > > > (ShortEntryPrice - _BEP), ShortExitSignal);
> > > > > ShortEntryBEStoploss:= if(ShortEntryBEStoplossFlag=1 OR 
> > > > > ShortEntrySignal OR ShortExitSignal, ShortEntryPrice - 
> _Spread, 
> > > > > null);
> > > > > DisplayShortEntryBEStoploss:= if(BEStoplossMode=0, 
> > > > > ShortEntryBEStoploss, null);
> > > > > 
> > > > > ShortEntryPipTrailingStop:= if(ShortTradeAlert=1 OR 
> > > > ShortEntrySignal 
> > > > > OR ShortExitSignal, min((C + _TrailingStoploss - _Spread), 
> PREV
> > > > > (ShortEntryPrice + _TrailingStoploss - _Spread)), null);
> > > > > ShortEntryATRTrailingStop:= if(ShortTradeAlert=1 OR 
> > > > ShortEntrySignal 
> > > > > OR ShortExitSignal, min(LLV(L,BarsSinceShortEntry) + (ATR
> > > (ATRper) * 
> > > > > atrmultiplier), PREV(valuewhen(1,ShortEntrySignal,L) + (ATR
> > > (ATRper) 
> > > > > * atrmultiplier))), null);
> > > > > DisplayShortEntryTrailingStop:= if(TrailingStoplossMode=0 
> AND 
> > > > > TrailingStoplossType=1, ShortEntryPipTrailingStop,
> > > > >                                 if(TrailingStoplossMode=0 
> AND 
> > > > > TrailingStoplossType=0, ShortEntryATRTrailingStop,
> > > > >                                 null));
> > > > > 
> > > > > ShortEntryProfitTarget:= if(ShortTradeAlert=1 OR 
> > > ShortEntrySignal 
> > > > OR 
> > > > > ShortExitSignal, ShortEntryPrice - _ProfitTarget - 
_Spread, 
> > > null);
> > > > > DisplayShortEntryProfitTarget:= if(ProfitTargetMode=0, 
> > > > > ShortEntryProfitTarget, null);
> > > > > 
> > > > > ShortExitSignal:= (ShortTradeAlert=1 AND 
> InitialStoplossMode=0 
> > > AND 
> > > > > Cross(C,ShortEntryInitialStop))
> > > > >                OR (ShortTradeAlert=1 AND BEStoplossMode=0 
> AND 
> > > Cross
> > > > > (C,ShortEntryBEStoploss))
> > > > >                OR (ShortTradeAlert=1 AND 
> TrailingStoplossMode=0 
> > > AND 
> > > > > TrailingStoplossType=1 AND Cross
> (C,ShortEntryPipTrailingStop))
> > > > >                OR (ShortTradeAlert=1 AND 
> TrailingStoplossMode=0 
> > > AND 
> > > > > TrailingStoplossType=0 AND Cross
> (C,ShortEntryATRTrailingStop))
> > > > >                OR (ShortTradeAlert=1 AND 
ProfitTargetMode=0 
> AND 
> > > > Cross
> > > > > (ShortEntryProfitTarget,C))
> > > > >                OR (ShortTradeAlert=1 AND ShortExitSetup);
> > > > > 
> > > > > ShortExitPrice:= valuewhen(1,ShortExitSignal,C) + _Spread;
> > > > > 
> > > > > {Simulated Open Trade Determination and Trade Direction}
> > > > > 
> > > > > LongTradeAlert:= SignalFlag
(LongEntrySignal,LongExitSignal);
> > > > > ShortTradeAlert:= SignalFlag
> (ShortEntrySignal,ShortExitSignal);
> > > > > 
> > > > > {Create Auto-Trading Functionality}
> > > > > 
> > > > > OpenBuy:= LongEntrySignal and (eventCount('OpenBuy')
> =eventCount
> > > > > ('CloseBuy'));
> > > > > CloseBuy:= LongExitSignal and (eventCount('OpenBuy')
> >eventCount
> > > > > ('CloseBuy'));
> > > > > 
> > > > > OpenSell:= ShortEntrySignal and (eventCount('OpenSell')
> > > =eventCount
> > > > > ('CloseSell'));
> > > > > CloseSell:= ShortExitSignal and (eventCount('OpenSell')
> > > >eventCount
> > > > > ('CloseSell'));
> > > > > 
> > > > > {***********************************************}
> > > > > 
> > > > > {Calculate Simulated Individual Trade Profit In Pips}
> > > > > 
> > > > > _TradeProfitInPips:= If(LongExitSignal=1,LongExitPrice - 
> > > > > LongEntryPrice,
> > > > >                      If(ShortExitSignal=1,ShortEntryPrice -
 
> > > > > ShortExitPrice,
> > > > >                      0));
> > > > > 
> > > > > TradeProfitInPips:= if(SymbolDigits()=4, 
_TradeProfitInPips 
> * 
> > > > 10000, 
> > > > > _TradeProfitInPips * 100);
> > > > > 
> > > > > {Calculate Simulated Total Profit In Pips}
> > > > > 
> > > > > TotalProfitInPips:= cum(TradeProfitInPips);
> > > > > 
> > > > > {Calculate Number of Trades}
> > > > > 
> > > > > LongTrades:= cum(LongExitSignal);
> > > > > ShortTrades:= cum(ShortExitSignal);
> > > > > 
> > > > > LosingTrades:= cum(If(TradeProfitInPips < 0,1,0));
> > > > > WinningTrades:= cum(If(TradeProfitInPips > 0,1,0));
> > > > > BreakEvenTrades:= if((LongExitSignal=1 or 
ShortExitSignal=1) 
> > and 
> > > > > TradeProfitInPips=0, PREV+1, PREV);
> > > > > TotalTrades:= cum(LongExitSignal) + cum(ShortExitSignal);
> > > > > 
> > > > > {Calculate Additional Stats}
> > > > > 
> > > > > WinningTradesPips:= if(TradeProfitInPips > 
> 0,TradeProfitInPips 
> > + 
> > > > > PREV, PREV);
> > > > > LosingTradesPips:= if(TradeProfitInPips < 
> 0,TradeProfitInPips + 
> > > > > PREV, PREV);
> > > > > 
> > > > > LargestWinningTradeInPips:= max(TradeProfitInPips,PREV);
> > > > > LargestLosingTradeInPips:= min(TradeProfitInPips,PREV);
> > > > > 
> > > > > AverageWinningTradeInPips:= WinningTradesPips / 
> WinningTrades;
> > > > > AverageLosingTradeInPips:= LosingTradesPips / LosingTrades;
> > > > > 
> > > > > PercentProfitable:= (WinningTrades/TotalTrades) * 100;
> > > > > AverageWinLossRatio:= AverageWinningTradeInPips / 
> > > > > AverageLosingTradeInPips;
> > > > > 
> > > > > {***********************************************}
> > > > >
> > > >
> > >
> >
>



------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/equismetastock/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/equismetastock/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:equismetastock-digest@xxxxxxxxxxxxxxx 
    mailto:equismetastock-fullfeatured@xxxxxxxxxxxxxxx

<*> To unsubscribe from this group, send an email to:
    equismetastock-unsubscribe@xxxxxxxxxxxxxxx

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/