Why would I want to speak to him? I've just been looking at an indicator called Murrey Math that I've seen on Metatrader, it looks interesting in much the same way as Pivot Points and I wanted to know if someone had coded it for Amibroker.
I'm sure half the traders who dreamed up indicators were once accused as being marginally insane. But that's not the point is it? The original question still holds though - anyone have any Amibroker code for a Murrey Math indicator ? Cheers Martin Tom Lance wrote: > > > > > > > I think so. Have you ever spoken to Mr, Murrey? It very hard to get a > "straight" answer. Rather elusive. > > ----- Original Message ----- > *From:* Martin Cooney <mailto:[EMAIL PROTECTED]> > *To:* [email protected] <mailto:[email protected]> > *Sent:* Thursday, April 13, 2006 5:18 AM > *Subject:* Re: [amibroker] Murrey Math > > Like in a VooDoo kind of way, you mean? > > Could you elaborate maybe just a little more on why Murrey Math is such > an evil wicked indicator? > > Ideally I'd like to just get a workable understandable indicator and try > it out for myself on Amibroker. The Metatrader version is proving to be > a rather solid complimentary tool. > > Martin > > Tom Lance wrote: > > Be very careful with MM! > > > > ----- Original Message ----- > > *From:* Martin Cooney <mailto:[EMAIL PROTECTED]> > > *To:* Amibroker General Forum <mailto:[email protected]> > > *Sent:* Wednesday, April 12, 2006 9:05 PM > > *Subject:* [amibroker] Murrey Math > > > > Hi, > > > > Has anyone seen a good Murrey Math indicator ? > > > > There's one in the 3rd party area that dates back to 2002 but > there > > doesn't appear to be much in the way of instructions. I did > try it, > > plonked the DLL into /plugins and the afl drew a pile of cross > hatched > > lines. No idea why that is nor why it needs a DLL. > > > > Any help would be appreciated. (I have one for Metatrader 4 > which works > > really well) > > Cheers > > Martin > > > > > ------------------------------------------------------------------------ > > > > > //+------------------------------------------------------------------+ > > //| > Murrey_Math_MT_VG.mq4 | > > //| Copyright © 2004, MetaQuotes Software > Corp. | > > //| > http://www.metaquotes.net | > > > //+------------------------------------------------------------------+ > > #property copyright "Vladislav Goshkov (VG)." > > #property link "[EMAIL PROTECTED]" > > > > #property indicator_chart_window > > > > // > > > > ============================================================================================ > > // * Ëèíèè 8/8 è 0/8 (Îêîí÷àòåëüíîå ñîïðîòèâëåíèå). > > // * Ýòè ëèíèè ñàìûå ñèëüíûå è îêàçûâàþò ñèëüíåéøèå > ñîïðîòèâëåíèÿ è > > ïîääåðæêó. > > // > > > > ============================================================================================ > > //* Ëèíèÿ 7/8 (Ñëàáàÿ, ìåñòî äëÿ îñòàíîâêè è ðàçâîðîòà). Weak, > > Stall and Reverse > > //* Ýòà ëèíèÿ ñëàáà. Åñëè öåíà çàøëà ñëèøêîì äàëåêî è ñëèøêîì > áûñòðî > > è åñëè îíà îñòàíîâèëàñü îêîëî ýòîé ëèíèè, > > //* çíà÷èò îíà ðàçâåðíåòñÿ áûñòðî âíèç. Åñëè öåíà íå îñòàíîâèëàñü > > îêîëî ýòîé ëèíèè, îíà ïðîäîëæèò äâèæåíèå ââåðõ ê 8/8. > > // > > > > ============================================================================================ > > //* Ëèíèÿ 1/8 (Ñëàáàÿ, ìåñòî äëÿ îñòàíîâêè è ðàçâîðîòà). Weak, > > Stall and Reverse > > //* Ýòà ëèíèÿ ñëàáà. Åñëè öåíà çàøëà ñëèøêîì äàëåêî è ñëèøêîì > áûñòðî > > è åñëè îíà îñòàíîâèëàñü îêîëî ýòîé ëèíèè, > > //* çíà÷èò îíà ðàçâåðíåòñÿ áûñòðî ââåðõ. Åñëè öåíà íå îñòàíîâèëàñü > > îêîëî ýòîé ëèíèè, îíà ïðîäîëæèò äâèæåíèå âíèç ê 0/8. > > // > > > > ============================================================================================ > > //* Ëèíèè 6/8 è 2/8 (Âðàùåíèå, ðàçâîðîò). Pivot, Reverse > > //* Ýòè äâå ëèíèè óñòóïàþò â ñâîåé ñèëå òîëüêî 4/8 â ñâîåé > > ñïîñîáíîñòè ïîëíîñòüþ ðàçâåðíóòü öåíîâîå äâèæåíèå. > > // > > > > ============================================================================================ > > //* Ëèíèÿ 5/8 (Âåðõ òîðãîâîãî äèàïàçîíà). Top of Trading Range > > //* Öåíû âñåõ ðûíêîâ òðàòÿò 40% âðåìåíè, íà äâèæåíèå ìåæäó 5/8 > è 3/8 > > ëèíèÿìè. > > //* Åñëè öåíà äâèãàåòñÿ îêîëî ëèíèè 5/8 è îñòàåòñÿ îêîëî íåå â > > òå÷åíèè 10-12 äíåé, ðûíîê ñêàçàë ÷òî ñëåäóåò > > //* ïðîäàâàòü â ýòîé «ïðåìèàëüíîé çîíå», ÷òî è äåëàþò íåêîòîðûå > > ëþäè, íî åñëè öåíà ñîõðàíÿåò òåíäåíöèþ îñòàâàòüñÿ > > //* âûøå 5/8, òî îíà è îñòàíåòñÿ âûøå íåå. Åñëè, îäíàêî, öåíà > ïàäàåò > > íèæå 5/8, òî îíà ñêîðåå âñåãî ïðîäîëæèò > > //* ïàäàòü äàëåå äî ñëåäóþùåãî óðîâíÿ ñîïðîòèâëåíèÿ. > > // > > > > ============================================================================================ > > //* Ëèíèÿ 3/8 (Äíî òîðãîâîãî äèàïàçîíà). Bottom of Trading Range > > //* Åñëè öåíû íèæå ýòîé ëèíè è äâèãàþòñÿ ââåðõ, òî öåíå áóäåò > ñëîæíî > > ïðîáèòü ýòîò óðîâåíü. > > //* Åñëè ïðîáèâàþò ââåðõ ýòó ëèíèþ è îñòàþòñÿ âûøå íåå â òå÷åíèè > > 10-12 äíåé, çíà÷èò öåíû îñòàíóòñÿ âûøå ýòîé ëèíèè > > //* è ïîòðàòÿò 40% âðåìåíè äâèãàÿñü ìåæäó ýòîé ëèíèåé è 5/8 > ëèíèåé. > > // > > > > ============================================================================================ > > //* Ëèíèÿ 4/8 (Ãëàâíàÿ ëèíèÿ ñîïðîòèâëåíèÿ/ïîääåðæêè). Major > > Support/Resistance > > //* Ýòà ëèíèÿ îáåñïå÷èâàåò íàèáîëüøåå ñîïðîòèâëåíèå/ïîääåðæêó. > Ýòîò > > óðîâåíü ÿâëÿåòñÿ ëó÷øèì äëÿ íîâîé ïîêóïêè èëè ïðîäàæè. > > //* Åñëè öåíà íàõîäèòñÿ âûøå 4/8, òî ýòî ñèëüíûé óðîâåíü > ïîääåðæêè. > > Åñëè öåíà íàõîäèòñÿ íèæå 4/8, òî ýòî ïðåêðàñíûé óðîâåíü > > //* ñîïðîòèâëåíèÿ. > > // > > > > ============================================================================================ > > extern int P = 64; > > extern int StepBack = 0; > > > > double dmml = 0, > > dvtl = 0, > > sum = 0, > > v1 = 0, > > v2 = 0, > > mn = 0, > > mx = 0, > > x1 = 0, > > x2 = 0, > > x3 = 0, > > x4 = 0, > > x5 = 0, > > x6 = 0, > > y1 = 0, > > y2 = 0, > > y3 = 0, > > y4 = 0, > > y5 = 0, > > y6 = 0, > > octave = 0, > > fractal = 0, > > range = 0, > > finalH = 0, > > finalL = 0, > > mml[13]; > > > > string ln_txt[13], > > buff_str = ""; > > > > int > > bn_v1 = 0, > > bn_v2 = 0, > > OctLinesCnt = 13, > > mml_thk = 8, > > mml_clr[13], > > mml_shft = 3, > > nTime = 0, > > CurPeriod = 0, > > nDigits = 0, > > i = 0; > > > > > //+------------------------------------------------------------------+ > > //| Custom indicator initialization > function | > > > //+------------------------------------------------------------------+ > > int init() { > > //---- indicators > > > > ln_txt[0] = "[-2/8]P";// "extremely overshoot [-2/8]";// > [-2/8] > > ln_txt[1] = "[-1/8]P";// "overshoot [-1/8]";// [-1/8] > > ln_txt[2] = "[0/8]P";// "Ultimate Support - extremely oversold > > [0/8]";// [0/8] > > ln_txt[3] = "[1/8]P";// "Weak, Stall and Reverse - > [1/8]";// [1/8] > > ln_txt[4] = "[2/8]P";// "Pivot, Reverse - major [2/8]";// > [2/8] > > ln_txt[5] = "[3/8]P";// "Bottom of Trading Range - [3/8], if > > 10-12 bars then 40% Time. BUY Premium Zone";//[3/8] > > ln_txt[6] = "[4/8]P";// "Major Support/Resistance Pivotal > Point > > [4/8]- Best New BUY or SELL level";// [4/8] > > ln_txt[7] = "[5/8]P";// "Top of Trading Range - [5/8], if > 10-12 > > bars then 40% Time. SELL Premium Zone";//[5/8] > > ln_txt[8] = "[6/8]P";// "Pivot, Reverse - major [6/8]";// > [6/8] > > ln_txt[9] = "[7/8]P";// "Weak, Stall and Reverse - > [7/8]";// [7/8] > > ln_txt[10] = "[8/8]P";// "Ultimate Resistance - extremely > > overbought [8/8]";// [8/8] > > ln_txt[11] = "[+1/8]P";// "overshoot [+1/8]";// [+1/8] > > ln_txt[12] = "[+2/8]P";// "extremely overshoot [+2/8]";// > [+2/8] > > > > mml_shft = 3; > > mml_thk = 3; > > > > // Íà÷àëüíàÿ óñòàíîâêà öâåòîâ óðîâíåé îêòàâ > > mml_clr[0] = DarkBlue; // [-2]/8 > > mml_clr[1] = DarkViolet; // [-1]/8 > > mml_clr[2] = Aqua; // [0]/8 > > mml_clr[3] = Yellow; // [1]/8 > > mml_clr[4] = Red; // [2]/8 > > mml_clr[5] = DarkGreen; // [3]/8 > > mml_clr[6] = Blue; // [4]/8 > > mml_clr[7] = DarkGreen; // [5]/8 > > mml_clr[8] = Red; // [6]/8 > > mml_clr[9] = Yellow; // [7]/8 > > mml_clr[10] = Aqua; // [8]/8 > > mml_clr[11] = DarkViolet; // [+1]/8 > > mml_clr[12] = DarkBlue; // [+2]/8 > > //---- > > return(0); > > } > > > > > //+------------------------------------------------------------------+ > > //| Custor indicator deinitialization > function | > > > //+------------------------------------------------------------------+ > > int deinit() { > > //---- TODO: add your code here > > Comment(" "); > > for(i=0;i<OctLinesCnt;i++) { > > buff_str = "mml"+i; > > ObjectDelete(buff_str); > > buff_str = "mml_txt"+i; > > ObjectDelete(buff_str); > > } > > //---- > > return(0); > > } > > > //+------------------------------------------------------------------+ > > //| Custom indicator iteration > function | > > > //+------------------------------------------------------------------+ > > int start() { > > > > //---- TODO: add your code here > > > > if( (nTime != Time[0]) || (CurPeriod != Period()) ) { > > > > //price > > bn_v1 = Lowest(NULL,0,MODE_LOW,P+StepBack,0); > > bn_v2 = Highest(NULL,0,MODE_HIGH,P+StepBack,0); > > > > v1 = Low[bn_v1]; > > v2 = High[bn_v2]; > > > > //determine fractal..... > > if( v2<=250000 && v2>25000 ) > > fractal=100000; > > else > > if( v2<=25000 && v2>2500 ) > > fractal=10000; > > else > > if( v2<=2500 && v2>250 ) > > fractal=1000; > > else > > if( v2<=250 && v2>25 ) > > fractal=100; > > else > > if( v2<=25 && v2>12.5 ) > > fractal=12.5; > > else > > if( v2<=12.5 && v2>6.25) > > fractal=12.5; > > else > > if( v2<=6.25 && v2>3.125 ) > > fractal=6.25; > > else > > if( v2<=3.125 && v2>1.5625 ) > > fractal=3.125; > > else > > if( v2<=1.5625 && v2>0.390625 ) > > fractal=1.5625; > > else > > if( v2<=0.390625 && v2>0) > > fractal=0.1953125; > > > > range=(v2-v1); > > sum=MathFloor(MathLog(fractal/range)/MathLog(2)); > > octave=fractal*(MathPow(0.5,sum)); > > mn=MathFloor(v1/octave)*octave; > > if( (mn+octave)>v2 ) > > mx=mn+octave; > > else > > mx=mn+(2*octave); > > > > > > // calculating xx > > //x2 > > if( (v1>=(3*(mx-mn)/16+mn)) && (v2<=(9*(mx-mn)/16+mn)) ) > > x2=mn+(mx-mn)/2; > > else x2=0; > > //x1 > > if( (v1>=(mn-(mx-mn)/8))&& (v2<=(5*(mx-mn)/8+mn)) && (x2==0) ) > > x1=mn+(mx-mn)/2; > > else x1=0; > > > > //x4 > > if( (v1>=(mn+7*(mx-mn)/16))&& (v2<=(13*(mx-mn)/16+mn)) ) > > x4=mn+3*(mx-mn)/4; > > else x4=0; > > > > //x5 > > if( (v1>=(mn+3*(mx-mn)/8))&& (v2<=(9*(mx-mn)/8+mn))&& > (x4==0) ) > > x5=mx; > > else x5=0; > > > > //x3 > > if( (v1>=(mn+(mx-mn)/8))&& (v2<=(7*(mx-mn)/8+mn))&& (x1==0) && > > (x2==0) && (x4==0) && (x5==0) ) > > x3=mn+3*(mx-mn)/4; > > else x3=0; > > > > //x6 > > if( (x1+x2+x3+x4+x5) ==0 ) > > x6=mx; > > else x6=0; > > > > finalH = x1+x2+x3+x4+x5+x6; > > // calculating yy > > //y1 > > if( x1>0 ) > > y1=mn; > > else y1=0; > > > > //y2 > > if( x2>0 ) > > y2=mn+(mx-mn)/4; > > else y2=0; > > > > //y3 > > if( x3>0 ) > > y3=mn+(mx-mn)/4; > > else y3=0; > > > > //y4 > > if( x4>0 ) > > y4=mn+(mx-mn)/2; > > else y4=0; > > > > //y5 > > if( x5>0 ) > > y5=mn+(mx-mn)/2; > > else y5=0; > > > > //y6 > > if( (finalH>0) && ((y1+y2+y3+y4+y5)==0) ) > > y6=mn; > > else y6=0; > > > > finalL = y1+y2+y3+y4+y5+y6; > > > > for( i=0; i<OctLinesCnt; i++) { > > mml[i] = 0; > > } > > > > dmml = (finalH-finalL)/8; > > > > mml[0] =(finalL-dmml*2); //-2/8 > > for( i=1; i<OctLinesCnt; i++) { > > mml[i] = mml[i-1] + dmml; > > } > > for( i=0; i<OctLinesCnt; i++ ){ > > buff_str = "mml"+i; > > if(ObjectFind(buff_str) == -1) { > > ObjectCreate(buff_str, OBJ_HLINE, 0, Time[0], mml[i]); > > ObjectSet(buff_str, OBJPROP_STYLE, STYLE_SOLID); > > ObjectSet(buff_str, OBJPROP_COLOR, mml_clr[i]); > > ObjectMove(buff_str, 0, Time[0], mml[i]); > > } > > else { > > ObjectMove(buff_str, 0, Time[0], mml[i]); > > } > > > > buff_str = "mml_txt"+i; > > if(ObjectFind(buff_str) == -1) { > > ObjectCreate(buff_str, OBJ_TEXT, 0, Time[mml_shft], > > mml_shft); > > ObjectSetText(buff_str, ln_txt[i], 8, "Arial", > mml_clr[i]); > > ObjectMove(buff_str, 0, Time[mml_shft], mml[i]); > > } > > else { > > ObjectMove(buff_str, 0, Time[mml_shft], mml[i]); > > } > > } // for( i=1; i<=OctLinesCnt; i++ ){ > > > > nTime = Time[0]; > > CurPeriod= Period(); > > > > } > > > > //---- End Of Program > > return(0); > > } > > > //+------------------------------------------------------------------+ > > > > > > > > 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 > > > > * Visit your group "amibroker > > <http://groups.yahoo.com/group/amibroker>" on the web. > > > > * To unsubscribe from this group, send an email to: > > [EMAIL PROTECTED] > > > <mailto:[EMAIL PROTECTED]> > > > > * Your use of Yahoo! Groups is subject to the Yahoo! Terms of > > Service <http://docs.yahoo.com/info/terms/>. > > > > > > > ------------------------------------------------------------------------ > > > > > 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 > > * Visit your group "amibroker > <http://groups.yahoo.com/group/amibroker>" on the web. > > * To unsubscribe from this group, send an email to: > [EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]> > > * Your use of Yahoo! Groups is subject to the Yahoo! Terms of > Service <http://docs.yahoo.com/info/terms/>. > > > ------------------------------------------------------------------------ > 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: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
