مؤشر الدعوم والمقاومات الجديد
تويتر المصدر فيسبوك المصدر



العودة   المصدر السعودي > منتدى الأسهم > التحليل الفني




المواضيع الجديدة في التحليل الفني


إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
قديم 08-04-2016, 10:01 PM #1
عبادي

مشرف




مؤشر جديد يوضح الدعوم والمقاومات للسهم مع توضيح

المسار الايجابي والسلبي للسهم ..ايضا تم اختبار

السهم يوميا على بعض الاسهم مع استخدام مؤشر الماكد

للتأكيد اترك لك حرية استخدام المؤشر والحكم عليه

بنفسك . شاهد صورة المؤشر بالاسفل مع صورة الاعدادات




الصحيحة للمؤشر


مؤشر الدعوم والمقاومات الجديد


مؤشر الدعوم والمقاومات الجديد

المعادلة :


كود:
_SECTION_END();
FS=Param("Font Size",17,11,100,1);
GfxSelectFont("Times New Roman", FS, 700, True ); 
GfxSetBkMode( colorWhite ); 
GfxSetTextColor( ParamColor("Color",colorBlue) ); 
GfxTextOut("H="+H+" ",20,20); 
GfxTextOut("O="+O+" ",20,50); 
GfxTextOut("L="+L+" ",20,80); 
GfxTextOut("C="+C+" " ,20,110); 
_SECTION_END();

_SECTION_BEGIN("Price");
SetChartOptions(0,chartShowArrows|chartShowDates);
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
Plot( C, "Close", ParamColor("Color", colorBlack ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() ); 
_SECTION_END();

_SECTION_BEGIN("NRTR WATR wma");
// NRTR_WATR 
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}}    ** 
"+"{{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 )) ));


SetBarsRequired(200,0);
GraphXSpace = 5;


k = Param("K", 1.);
Per = Param("ATR", 1);


WATR = WMA(H-L, Per);

revers = k * WATR;

Trend = 1;  
NW[0] = 0;  


for(i = 1; i < BarCount; i++)
{
 if(Trend[i-1] == 1)                //Up Trend
 {
  if(C[i] < NW[i-1])                 
  {
   Trend[i] = -1;                   
   NW[i] = C[i] + Revers[i];        //  NW
  }
  else                              
  {
   Trend[i] = 1;
   if((C[i] - Revers[i]) > NW[i-1]) //  NW
   {
    NW[i] = C[i] - Revers[i]; 
   }
   else
   {
    NW[i] = NW[i-1];
   }
  } 
 }
//======================================
 if(Trend[i-1] == -1)               //Down Trend
 {
  if(C[i] > NW[i-1])                
  {
   Trend[i] = 1;                    
   NW[i] = C[i] - Revers[i];        //  NW
  }
  else                              
  {
   Trend[i] = -1;
   if((C[i] + Revers[i]) < NW[i-1]) //  NW
   {
    NW[i] = C[i] + Revers[i]; 
   }
   else
   {
    NW[i] = NW[i-1];
   }
  }
 }
}


Plot(C, "C", 2, 64);
Plot(NW, "NRTR WATR -wma", IIf(Trend == 1, 27, 4), 4);
Buy=Cover=Cross(C,nw);
Sell=Short=Cross(nw,C);
PlotShapes((Buy*1)+(Sell*2),IIf(Buy,colorGreen,colorRed) ); 
shape = Buy * shapeUpArrow + Sell * shapeDownArrow;

_SECTION_END();

//////////begin/////////

box1=0;
box2=0;
SetBarsRequired(10000,10000);
procedure fillDarvas(start,end,swap,top, bottom )
{
   for ( j = start; j < end; j++)
   {
       if( box1[j] == swap)
  box1[j]= top ;
else
box1[j]= bottom;

       if(box2[j] == swap)
  box2[j]= bottom ;
else
box2[j]= top;
   }
}

BoxArr1 = 0;
BoxArr2 = 0;
StateArray = 0;
DBuy = 0;
DSell = 0;
TopArray = 0;
BotArray = 0;
tick=0;

BoxTop = High[0];
BoxBot = Low[0];
swap=0;
state = 0;
BoxStart = 0;

for (i=0; i<BarCount; i++)
{
 if (state==5)
 {
  TopArray[i]=BoxTop;
  BotArray[i]=BoxBot;
  if (Low[i]<(BoxBot*(1-tick/100)) || High[i]>(BoxTop*(1+tick/100)))
  {
fillDarvas(BoxStart,i,swap,BoxTop,BoxBot);

  state = 1;
  swap =  !swap;
  BoxTop = High[i];
  BoxStart = i;
  }
 }
 else
 {
  if (High[i]<BoxTop)
  {
      if ((state<3) || (Low[i]>BoxBot))
      {
   state++;
   }
      else
   {
      state=3;
   }
      if (state==3)
      BoxBot=Low[i];
  }
  else
  {
      state=1;
      BoxTop=High[i];
  }
 }
 StateArray[i] = state;
}

fillDarvas(BoxStart,BarCount,swap,BoxTop,BoxBot);


Buyrule=H>Ref(box1,-1) AND H>Ref(box2,-1) AND Ref(statearray,-1)==5;
Sellrule=L<Ref(box1,-1) AND L<Ref(box2,-1) AND Ref(statearray,-1)==5;

Buy = Buyrule;
statopt = Optimize("statopt var", 3, 1, 5, 1 ); 
lossopt= Optimize("lossopt var", 5, 3, 10, 1 ); 
//statopt=5;
//lossopt=7;

topvalue=IIf(box1>box2,box1,box2);
Sellrule2 = (((topvalue-Close)*100/topvalue) > lossopt) AND (statearray == statopt);
Sell = Sellrule OR Sellrule2;

Short = Sell;
Cover = Buy;

_SECTION_BEGIN("PANEL 25 MURREY MATH");
ParamShowLevel=ParamList("Show harmonic levels", "1/8|1/4|1/2", 1 ); 
ParamShowLabel=ParamStyle("Show harmonic labels", styleNoLabel, styleNoLabel);

if(Status("action") ==1)  //indicator
{
    LastVisibleIndex = LastValue(Status("lastvisiblebarindex"));
    if (LastVisibleIndex > BarCount -1) //to avoid errors is case of cursor is behind the last bar
	    LastVisibleIndex = BarCount-1;
    TotalVisibleBars = LastVisibleIndex - LastValue(Status("firstvisiblebarindex")) + 1;
}
else
{
    LastVisibleIndex = BarCount -1;
    TotalVisibleBars = BarCount;
}

HHScreen = HHV(High, TotalVisibleBars);
LLScreen = LLV(Low,  TotalVisibleBars);
PRScreen = HHScreen[LastVisibleIndex] - LLScreen[LastVisibleIndex]; //Price range

PriceRangeVisible = PRScreen * 1.1;
MiddleVisible = (HHScreen[LastVisibleIndex] + LLScreen[LastVisibleIndex]) /2;
HighestVisible= MiddleVisible + PriceRangeVisible / 2;
LowestVisible = MiddleVisible - PriceRangeVisible / 2;

SquareBase = 0.1953125;

if (HighestVisible > 0.390625)
    { SquareBase = 1.5625; }

if (HighestVisible > 1.5625)
    { SquareBase = 3.125; }
	
if (HighestVisible > 3.125)
    { SquareBase = 6.25; }
	
if (HighestVisible > 6.25)
    { SquareBase = 12.5; }
    
if (HighestVisible > 25)
    { SquareBase = 100; }
        	
if (HighestVisible > 250)
    { SquareBase = 1000; }
	
if (HighestVisible > 2500)
    { SquareBase = 10000; }
	
if (HighestVisible > 25000)
    { SquareBase = 100000; }

ShowLevel = 1;

PriceStep = SquareBase / 8;
while ( PriceRangeVisible / 4 <= PriceStep AND ShowLevel < 4)
{
    PriceStep = PriceStep / 8;
    ShowLevel++;
}

//Lowest,highest harmonic value to show on the panel
LowerValue  = floor(LowestVisible  / PriceStep) * PriceStep;
HigherValue = ceil(HighestVisible / PriceStep) * PriceStep;

Octave1PriceStep = SquareBase / 8; 
Octave2PriceStep = SquareBase / 64 ;
Octave3PriceStep = SquareBase / 512;

Harmonic = LowerValue;

//iterate from low to high values 
while( Harmonic <= HigherValue )
{
    style = styleDashed; // 1/8, 3/8, 5/8, 7/8 lines of any level
    color = colorBlue;  //1/8, 7/8
    if ((Harmonic / PriceStep) % 8 == 1 OR (Harmonic / PriceStep) % 8 == 7)
        color = colorBlue; // 3/8, 5/8
    if (ParamShowLevel != "1/8")
        style = styleNoLine;
        
    if ((Harmonic / PriceStep) % 2 == 0) // 1/4, 3/4 lines of any level
    {
        style = styleLine;
        color = colorBlack;
        if (ParamShowLevel == "1/2")
            style = styleNoLine;
    }
     
    if ((Harmonic / PriceStep) % 4 == 0) // 1/2 line of any level
    {
        style = styleDots;
        color = colorViolet;
    }
    
    if ((Harmonic / PriceStep) % 8 == 0) // 1/1 line of Baby level
    {
        color = colorDarkYellow;
        style = styleDots;
        if ((Harmonic / Octave3PriceStep) % 64 == 0) // 1/1 line of Minor level 
        {
             style = styleDots; // 1/1 /Level Minor
        }
    }
    
    if (style != styleNoLine)  //if there is a line to plot... (avoid printing unused labels)
    {
	    style = style + ParamShowLabel;
        Plot( Harmonic, "", color, style);
    }
    
    Harmonic = Harmonic + PriceStep;
}
_SECTION_END();


_SECTION_BEGIN("Background");
SetChartOptions(0,chartShowArrows|chartShowDates);
priceTitle=StrFormat("---- {{NAME}} ---------- {{VALUES}}"); 
Title ="Averages" + priceTitle;

if( ParamToggle("Tooltip shows", "All Values|Only Prices" ) )
{
ToolTip=StrFormat("Open: %g\nHigh: %g\nLow: %g\nClose: %g (%.1f%%)\nVolume: "+NumToStr( V, 1 ), O, H, L, C, SelectedValue( ROC( C, 1 )));
}

SetChartBkColor(ParamColor("Outer panel color ",colorBlack)); // color of outer border 
SetChartBkGradientFill( ParamColor("Inner panel color upper half",colorBlack),ParamColor("Inner panel color lower half",colorBlack)); // color of inner panel
_SECTION_END();


اتمنى لكم دوام التوفيق


أخوكم عبادي


رد مع اقتباس
إضافة رد

مواقع النشر (المفضلة)

الكلمات الدلالية (Tags)
الجديد , الدعوم , مؤشر , والمقاومات

أدوات الموضوع
انواع عرض الموضوع

الانتقال السريع

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
مطلوب مؤشر موجات الذئب YHAM4 التحليل الفني 1 08-11-2014 02:58 PM
مؤشر المصدر الاحترافي عبادي التحليل الفني 9 28-12-2013 02:32 AM
مؤشر BOLLINGER BANDS عبادي التحليل الفني 2 29-11-2009 02:27 AM
مؤشر جديد للمستثمرين hasooona الأسهم السعودية 9 29-11-2008 09:53 AM
مؤشر السيولة غير كافٍ almsdar الوظائف و الاعلانات 0 01-09-2007 03:10 AM


الساعة الآن 07:06 AM


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2016, vBulletin Solutions, Inc.