Simple färg glidande medelvärde mt4 indikator


Hämta Hämta Hämtnings Download. Moving Averages MAs är bland de vanligaste indikatorerna i Forex. De är enkla att ställa in och lätt att tolka. Med enkla, glidande medelvärden kan du bara mäta det genomsnittliga priset på priset under en viss tidsperiod. Det släpper ut prisdata , vilket gör det möjligt att se marknadstrender och tendenser. Hur man använder Moving Averages. Moving Average är en trendindikator. Förutom sin uppenbara enkla funktion har ett Moving Average mycket mer att säga. I Forex glidande medelvärde används för att bestämma.1 Prisriktning - upp , ned eller sidled 2 Prisplats - Handelsförskjutning över Flyttande medelvärde - köp, under Flyttande medelvärde - sälja 3 Prismoment - vinkeln för den rörliga genomsnittliga stigvinkeln - momentum håller, fallvinkeln - momentum pausar eller stannar 4 Prisstödmotståndsnivåer. Typ av rörliga medelvärden. SMA - Enkelt rörligt medelvärde - visar genomsnittspriset under en given tidsperiod. EMA - Exponentiell rörlig genomsnitts - prioriterar de senaste uppgifterna, reagerar således på prischan ges snabbare än Simple Moving Average. WMA - Viktat Flyttande Medelvärde - lägger tonvikten på senaste data en mindre - på äldre data. De flesta vanliga inställningarna för Flyttmedelvärden i Forex.200 EMA och 200 SMA 100 SMA 50 SMA 34 SMA 20 EMA och 20 SMA 10 EMA och 10 SMA. Try och test och välj sedan din favorit uppsättning Moving Averages. Moving Average Video Presentation. Other versioner av Moving Averages. Besides traditionella EMA, SMA och WMA indikatorer finns det flera andra typer av MAs tillgängliga för Forex traders. Displaced Moving Average DMA är ditt normala rörande medelvärde med enbart skillnad att det har skiftats i tid, antingen bakåt eller framåt. För att göra DMA lägger vi till Shift-värdet. Ett negativt värde skulle innebära ett skifte bakåt - så att ditt rörliga medelvärde kommer att Hålla sig bakom priset N antal intervall Sådant Displaced Moving Average kan innehålla priset i en trend bättre. Ett positivt värde skulle leda till en växling framåt - sådant Förskjutet Flyttmedelvärde blir en ledande indikator, vilken till några e xtent hjälper till att förutse nästa drag. Jag använde 5ema, 10ema och 20ema och när 5ema korsar över både 10and20ema jag går in lång och vice versa snälla berätta för mig är det ok cos är ny på Forex trading Awoooooooooooo. It är säkert Ok Det är så känt tekniken i handel. kan någon berätta för mig vad är det bästa bevisade glidande medlet baserat på din erfarenhet. Avgör vad du vill ha av det Snabbare trender - 20 SMA, mitt trender - 50 SMA, längre trender - 100 eller 200 SMA Om du vill använda det rörliga genomsnittet, inte bara för att hitta trender, utan att faktiskt ge dig snabbköp säljsignaler, då behöver du en mindre MA-10 EMA är den som används mest. Hej, jag är din förklaring mycket lätt att förstå, jag ger du börjar 5. Som du använder 50,100, 200 MA, men gör 100 exponentiella. Den 50 ger bra trendinformation och alla tre ger utmärkt dynamiskt stödmotstånd. Jag vet att det här kan låta galet, men för mig är det bästa kortsiktiga genomsnittet en kanal gjord av 8 Smoothed MA high och 8 Smoo thed MA low Detta ger en utmärkt trendriktning och hjälper dig att varna sidledes rörelse och hjälpa till med att bestämma breakout. Detta ger också överlägsen dynamiskt stödmotstånd. Det här är självklart inte beroende av ett kors men mer på prisåtgärder i förhållande till den mycket kraftfulla kanalen När de kombineras med ett par indikatorer som RSI ATR, gör jag dem alla en annan färg bara för att göra det enkelt att hitta hög och låg kanal. Tack för att du har visat indikatorer och förklaringar svårt att hitta någon annanstans. Du har hjälpt mig mer än kan du tänka dig. Kan ledningen berätta för m eller någon med skicklig Forex trading erfarenhet vad är det bästa antingen EMA eller SMA och siffror för handel 15 minuter diagram med en långsiktig 6 8 timmar upp till 12 timmar Outlook Market direction. Plus om du kan också förklara bättre snälla, precis vad som menas med ovanstående häri blogginlägg angående skärmbilden av displacement Moving Average DMS-inställningarna betyder dvs Är det nummer relevant t till tidsramskartan man handlar och respektive antal ljusstake 3 framåt på marknaden före det aktuella marknadspriset och respektive negativa -3 antal ljusstake bakom det aktuella marknadspriset. Tack så mycket. Om du vill ha en mjukare MA - SMA skulle vara bättre Om du behöver s snabbare MA - ta EMA. Smoothing hjälper till att undvika några falska spikar, men det försenar också in - och utgående signaler. Med EMA får du mycket snabbare svar på prisändringar, men det kommer komma på en ökad frekvens av falska signaler Det är skillnaden Allt beror på ett s handelssystem, där både EMA och SMA kan användas effektivt för handel på 15 min. TF.-10 Shift för Moving Average ändrar enkelt indikatorn X-nummer staplar på diagrammet för den aktuella tidsramen minus tio skulle innebära att skiftet är 10 staplar bakom, plus 10 skulle flytta det 10 bar framåt. Tack för ditt bra jobb. Jag har bara en snabb fråga. Är det möjligt att förskjuta en given Moving Averag e och har fortfarande MA-serien på det aktuella ljuset istället för att ligga bakom antalet förskjutna ljusvärden. Jag tror inte att det är möjligt på MT4, om så är det en separat indikator som kan göra just detta. Tack och jag hoppas min fråga är klart enough. Simple Colored Moving Average MT4 Indicator. MA-In-Color indikator är ett annat enkelt verktyg för valutahandlare Skillnaden mellan MA-In-Color indikator och original glidande medelvärde är att denna indikator ändrar färg enligt höjden. Ladda ner Simple Färgad Flyttande Genomsnitt MT4 Indikator Standard Enkel MA med olika färger när riktningen ändras. Grön Köp Röd Sälj Gul Nej Handel. Hur handlar du med MA-In-Color. Buy Signal - Wait för MA-In-Color-linjen för att gå till grön. Sälj Signal - Wait för MA-In-Color linje för att gå till red. hi Jag är intresserad av din Simple Colored Moving Average MT4 Indikator hur får jag tillgång till det Jag måste säga att jag tycker att dina instruktioner är mycket svåra att förstå först säger du nedladdning Indikatorn frågar dig då s att ladda ner hela din lista med indikatorer med hjälp av en rar extraktor sak som jag inte vet om kan du snälla berätta för mig hur jag kan komma åt den ena indikatorn tack daniel eigenmann. När du laddar ner indikatorer måste du använda WinRar eller WinZip för att extrahera indikatorer Tack you. Creation of Custom Indicators. When skapandet av en handelsstrategi möter en utvecklare ofta behovet av att rita grafiskt i ett säkerhetsfönster ett visst beroende beräknat av en användarprogrammerare För detta ändamål erbjuder MQL4 möjligheten att skapa egna indikatorer. Kundindikatorn är en applikation Programkodat i MQL4 är det i grund och botten avsett för grafisk visning av preliminärt beräknade dependences. Custom Indicator Structure. Necessity of Buffers. Huvudprincipen som ligger till grund för anpassade indikatorer är att överföra värden av indikatorraderingar till en klientterminal för att dra indikatorlinjer via växelbuffertar. Bufferten är Ett minnesområde som innehåller numeriska värden för en indikator array. MQL4-standard innebär möjligheten En uppräkning av upp till åtta indikatorlinjer med hjälp av en anpassad indikator En indikatormatris och en buffert bringas i korrespondens med varje indikatorrad Varje buffert har sitt eget index Indexet för den första bufferten är 0, den andra 1 - och så den sista har indexet 7 Fig 115 visar hur informationen från en anpassad indikator skickas via buffertar till en klientterminal för att teckna indikatorlinjer. Fig. 115 Passvärden för indikatoruppsättningar via en buffert till en klientterminal. Den allmänna ordningen av byggnadsindikatorlinjer är följande.1 Beräkningar utförs i en anpassad indikator som ett resultat numeriska värden tilldelas indikator array element.2 Värden av indikator array element skickas till en klient terminal via buffertar.3 På baserna av värdesystemer mottagen från buffertar en klientterminal visar indikatorlinjer för en anpassad indikator. Vi analyserar en enkel anpassad indikator som visar två linjer - en rad bygger på maximal stapelpris, sekundet ond man använder minimala priser. Exempel på en enkel anpassad indikator. Vi analyserar i detalj indikatordelarna I alla applikationsprogram som är skrivna i MQL4 kan du ange inställningsparametrar som ger rätt programservicering av en klientterminal. I detta exempel är huvudprogrammets del se Programstruktur innehåller flera rader med direktivegenskaper. Det första direktivet anger i vilket fönster klientterminalen ska rita indikatorlinjerna. I MQL4 finns det två varianter av teckningsindikatorlinjer i huvudfönstret och i ett separat fönster är huvudfönstret det fönstret som innehåller ett säkerhetsschema I det här exemplet visar parametern indicatorchartwindow i egenskapskatalogen att en klientterminal ska rita indikatorlinjer i huvudfönstret. Nästa rad visar antalet buffertar som används i indikatorn. I det analyserade exemplet ritas två indikatorlinjer Buffert tilldelas varje buffert, så det totala antalet buffertar är två. Nästa rad beskriver färger på t Han indikatorlinjer. Parametrar indicatorcolor1 och indicatorcolor2 definierar färginställningen för motsvarande buffertar - i detta fall för buffertar med index 0 Blue och 1 Red Note att siffror i parameternamn indicatorcolor1 och indicatorcolor2 inte är buffertindex Dessa siffror är delar av konstanta namn som är inställda i enlighet med buffertar För varje konstant färg kan ställas in enligt användarens eget omdöme. I nästa rad anges indikatorrader. Indikatorn är avsedd för att dra två indikatorlinjer, så vi måste deklarera två globala endimensionella arrays, en För varje rad Namnen på indikatorrader är upp till användaren I detta fall används arraynamn Buf0 och Buf1, i andra fall kan andra namn användas, till exempel Line1, Alfa, Integral etc. Det är nödvändigt att deklarera arrayer på global nivå , Eftersom värdena för arrayelement måste bevaras mellan samtal av den speciella funktionstarten. Den beskrivna anpassade indikatorn är uppbyggd på grundval av två speciella funktioner - init och startar T han funktion init innehåller den del av koden som används i programmet bara en gång se Specialfunktioner. En mycket viktig åtgärd utförs i linjen. Använd funktionen SetIndexBuffer en nödvändig buffert i detta fall med indexet 0 sätts i korrespondens med en array i detta fall Buf0 Det betyder att för konstruktion av den första indikatorlinjen kommer en klientterminal att acceptera data som finns i matrisen Buf0 med nollbufferten för den. Ytterligare linjestilen är definierad. För nollbufferten 0 borde en klientterminal använda följande ritstilar enkel linje DRAWLINE, solid linje STYLESOLID, linjebredd 2. De följande två linjerna innehåller inställningar för den andra raden. Således, enligt koden för specialfunktionen init, kommer båda indikatorlinjerna att dras i huvudfönstret. Den första kommer att vara en solid blå linje med bredden 2, den andra är en röd prickad linje STYLEDOT med en vanlig bredd Indikatorlinjer kan dras av andra stilar och se även Styles of Indicator Lines. Calculating Values Av indikatorraderelementen är uppmärksam. Val av indikatorraderingselement beräknas i specialfunktionsstart För att förstå korrekt innehållet i startkoden, var uppmärksam på ordningen för indexeringsstänger. Arrays avsnitt beskriver i detalj metoden för indexering av arrays-timeseries. denna metod bar indexering börjar från noll Nollstången är en ström men ändå ofärkt bar Den närmaste bar s index är 1 Nästa s s är 2 och så vidare. As nya barer visas i ett säkerhetsfönster, indexer av redan bildade historikfält är ändrade Den nya strömmen, precis formad, högerstången får nollindex, den som tillhör vänster som bara har fullformat får indexet 1 och värdena på index för alla historikfält ökar också med en. Den beskrivna metoden för indexeringsfält är det enda som är möjligt för hela online-handelssystemet MetaTrader, och det beaktas vid ritning av linjer med både tekniska och anpassade indikatorer. Det sägs tidigare att indikatorlinjerna är konstruerad på grundval av numerisk information som finns i indikatorraderingar En indikatoruppsättning innehåller information om prickskoordinater där en indikatorlinje dras och Y-koordinaten för varje prick är värdet av ett indikatoruppsättningselement och X-koordinat är värdet av en indikator array elementindex I det analyserade exemplet ritas den första indikeringslinjen med maximala värden av staplar Fig 116 visar denna indikatorlinje av blå färg i ett säkerhetsfönster, den är byggd på basis av indikatoruppsättningen Buf0.Fig 116 Korrespondering av koordinater av en indikatorlinje till värdena för en indikator array. Index-värdet för en indikator array utgår av en klientterminal i korrespondens med ett stapelindex - dessa indexvärden är lika. Det måste också beaktas att processen att konstruera indikatorlinjer går I realtidsläge under förutsättningar när i ett säkerhetsfönster visas nya fält från tid till annan och alla historikfält flyttas till vänster för att få in dikatorlinjen dras rätt på varje linjepunkt ovanför dess stapel, måste den också flyttas med staplar. Därför behövs det ett tekniskt behov för att indexera en indikator array. Den grundläggande skillnaden för en indikatormatris från ett vanligt array är följande. För tillfället när en ny stapel skapas ändras indexvärdena för indikator array-elementen automatiskt av klientterminalen, nämligen - värdet för varje indikator array index ökar med en och indikator array storleken ökas med ett element med ett nollindex. nollstången i Fig 116 tidsram H1 har öppningstiden 6 00 Vid 7 00 kommer en ny stapel att visas i säkerhetsfönstret Baren öppnad kl 6 00 kommer automatiskt att få indexet 1 Att få indikatorlinjen ritad korrekt på denna stapel, klientterminalen ändrar indexet för indikatoruppsättningselementet som motsvarar stången öppnad vid 6 00 i tabellen i fig 116 skrivs detta element i första raden tillsammans med att index för alla matriselement kommer att vara i ncreased av klientterminalen med en En indexet av matriselementet som motsvarar baren öppnade vid 6 00 kommer att få värdet 1 innan det var lika med 0 Indikatoruppsättningen blir större med ett element Indexet för ett nytt tillagd element kommer att vara lika med 0 kommer värdet av detta element att vara ett nytt värde som reflekterar koordinaten för indikatorlinjen på en nollstång. Detta värde beräknas i den speciella funktionstart på varje ficka. Beräkningar i den speciella funktionstart bör utföras så att inga extra åtgärder utfördes Innan indikatorn är kopplad till ett diagram, återspeglar den inte några indikatorlinjer eftersom värdena på indikatorrader inte är definierade ännu. Därför måste startvärdena för indikatorns arrayvärden beräknas för alla staplar, på vilka indikatorlinjen ska dras I det analyserade exemplet är dessa alla staplar som finns på ett diagram kan de ursprungliga beräkningarna utföras inte för alla tillgängliga staplar, men för någon sista del av historien beskrivs i ytterligare exempel. Ar alla ytterligare startar av specialfunktionen startas det inte nödvändigt att beräkna värdena för indikatoruppsättning för alla staplar igen. Dessa värden är redan beräknade och finns i indikatoruppsättningen. Det är nödvändigt att beräkna strömmen värdet av indikatorlinjen bara på varje nytt fält i nollstången. För genomförandet av den beskrivna tekniken finns en mycket användbar standardfunktion i MQL4 - IndikatorCounted. Function IndicatorCounted. This funktionen returnerar antalet staplar som inte har ändrats sedan sista indikator-call. If indikatorn aldrig har kopplats till ett diagram, vid första startkörningen, kommer värdet av countedbars att vara lika med zero. It betyder att indikatoruppsättningen inte innehåller något element med tidigare fördefinierade värde, det är därför hela Indikatoruppsättningen måste beräknas från början till slut Indikatoruppsättningen beräknas från den äldsta streck till noll ett Index för den äldsta streck, start fr om vilka beräkningar som måste startas beräknas följande sätt. Antag vid det ögonblick som indikatorn fästs finns 300 bar i ett diagramfönster Det här är värdet för den fördefinierade variabeln Barer Som definierats tidigare är räknefält lika med 0 Så som ett resultat vi får att jag indexerar den första obalanserade fältet den senaste, från vilken beräkningar ska utföras är lika med 299. Alla värden av indikatorraderingselementen beräknas i slingan medan. medan jag ligger inom intervallet från det första obelagd stång 299 till den nuvarande 0 inkl., beräknas värdena för indikatoruppsättningselement för båda indikatorlinjerna. Observera att saknade värden av indikatoruppsättningselement beräknas under en första start av specialfunktionsstart. Under beräkningarna minns klientterminalen element för Vilka värden beräknades Den sista iterationen i tiden utförs när jag är lika med 0, dvs värdena på indikatorraderna beräknas för nollstången När slingan är över, startar den speciella funktionen sin exekvering och kontrollen överförs till klientterminalen. Klientterminalen kommer i sin tur att dra alla i detta fall två indikatorlinjer i enlighet med de beräknade värdena för array-elementen. Vid nästa kryssningsstart kommer startade av klientterminalen igen Ytterligare åtgärder beror på situationen vi fortsätter att analysera exemplet för 300 bar. Variant 1 Ett nytt fält kommer under bildandet av den aktuella nollstången den vanligaste situationen. Fig 117 Den bearbetade fästet tillhör nuvarande bar. Fig 117 visar två fästingar mottagna av terminalen vid tidpunkten t 1 och t 2. Den analyserade situationen kommer att vara densamma för båda fästingarna. Låt s spåra utförandet av start som lanserades för tillfället. t 2 Under utförandet av Funktionsstart Följande rad kommer att utföras. IndicatorCounted returnerar värdet 299, det vill säga sedan det senaste startsamtalet 299 föregående stavar inte ändrades. Därför blir indexvärdet lika med 0 30 0-299-1. Det betyder i nästa loop att värdena för arrayelement med nollindex beräknas. Med andra ord kommer den nya positionen för en indikatorlinje på nollstången att beräknas När cykeln är klar startar kommer sluta att exekvera och kommer att överföra kontrollen till klientterminalen. Variant 2 Ett nytt fält är det första fältet med en nollfält som händer från tid till annan. Fig 118 Den bearbetade fältet är det första fältet av en ny nollstav. I det här fallet Fakta om utseendet på en ny stapel är viktigt Innan kontrollen skickas till specialfunktionsstart kommer klientterminalen att dra alla streck som finns i säkerhetsfönstret igen och omindexera alla deklarerade indikatorrader som ställs i korrespondens med buffertarna. Dessutom kommer klientterminalen att komma ihåg att det redan finns 301 staplar, inte 300 i ett diagramfönster. Fig 118 innehåller situationen när den sista fältet i föregående fält för tillfället t 2 startades och utfördes av funktionen. Det är därför, men nu den första fältet med index 1 f inträffade för tillfället t 2 beräknades av indikatorn, kommer funktionen IndicatorCounted att returnera värdet som var på föregående stapel, dvs 299. I nästa linjens index kommer jag att beräknas, i det här fallet för det första fältet på en ny stapel blir det lika med 1 301-299-1. Det betyder att beräkning av indikator array värden i medan slingan vid utseendet på en ny stapel kommer att utföras både för den sista fältet och för den nya nollstången Lite tidigare under omindexering av indikatorraderingar klientterminalen ökade storlekarna av dessa arrays Värden av arrayelement med nollindex var inte definierade före beräkningarna i loopen Under beräkningar i loopen får dessa element några värden När beräkningarna i början är över, återgår kontrollen till klientterminalen Efter det att klientterminalen kommer att rita indikatorlinjer på nollstången baserat på just beräknade värden av arrayelement med nollindex. Variante 3 Ett nytt fält är det första fältet av en ny nollstång, men det sista men en tick är inte bearbetat sällsynt fall. Flik 119 Inte alla fästingar i föregående fält behandlades. Fig 119 visar situationen när start lanserades på det första fältet i en ny fält för tillfället t 5 Tidigare startades denna funktion för tillfället t 2 Tick som kom till terminalen för tillfället t 3 röda pilen bearbetades inte av indikatorn Detta hände eftersom startkörningen t 2 - t 4 är större än intervallet mellan ticks t 2 - t 3 Detta faktum kommer att detekteras av klientterminalen under genomförandet av start lanserad för tillfället t 5 Under beräkningar i linjen. IndicatorCounted kommer att returnera värdet 299 Detta värde är sant - från det sista indikatorns ögonblick 299 staplar ändrades inte redan nu 301. Därför beräknas den beräknade index för den första vänstra stapeln, från vilken beräkningar av array elementvärden måste startas, kommer att vara lika med 1 301-299-1.it betyder att under genomförandet kommer två iterationer att utföras under de första värdena av arrayelement med t hans index jag 1 kommer att beräknas, dvs Buf0 1 och Buf1 1 Inte, just nu börjar beräkningarna startas, streck och indikatorrader redan omkodas av klientterminalen eftersom en ny bar startade mellan start av specialfunktionsstart Det är varför beräkningar för element av arrays med index 1 kommer att beräknas på basis av array-timeseries maximala och minimala värden på ett barpris också med indexet 1.During den andra iterationen av samtidigt värden för element med nollindex, dvs för nollpunkten bar beräknas på grundval av senast kända värden av arrays-timeseries. Användning av den beskrivna tekniken för beräkning av anpassade indikatorer möjliggör för det första att garantera beräkning av värden för alla indikatoruppsättningselement oberoende av den specifika karaktären av fästhistorik, och för det andra att utföra beräkningar endast för icke-beräknade staplar, dvs använda ekonomiskt beräkna resurser. Inte en räkning anses icke beräknad om beräkningen av elementvärdena för en indikator uppträder åtminstone för Ett sista fält i baren utförs inte. När du börjar använda den anpassade indikatorn i ett diagramfönster ser du två linjer - en tjockblå linje byggd på barens maximala punkter och en prickad röd linje som bygger på dess minimum. Fig 120.Fig 120 Två indikatorlinjer i ett säkerhetsfönster som byggs av indikatorn. Det bör noteras att man kan bygga en anpassad indikator, vars indikatorlinjer skulle sammanfalla med linjerna med en analog teknisk indikator. Det kan enkelt göras om som beräkningsformler i den anpassade indikatorn, samma formler som i den tekniska indikatorn används För att illustrera detta låt oss förbättra programkoden som analyserats i föregående exempel Låt indikatorn rita linjer med medelvärden på maximala och minsta antal av flera sista staplar Det är lätt att genomföra nödvändiga beräkningar som vi bara behöver för att hitta medelvärden för arrays-timeseries-element Exempelvis värdet av en indikator array med indexet 3 dvs indikatorlinjekoordinat för den tredje fältet på basis av de fem senaste maximierna beräknas på följande sätt. Buf0 3 Hög 3 Hög 4 Hög 5 Hög 6 Hög 7 5.Analoga beräkningar kan utföras för en indikatorlinje byggd på minimum. Exempel på en enkel anpassad indikator Indikatorlinjerna är byggda på genomsnittliga minimala och maximala värden av N-rader. I det här exemplet finns en extern variabel AverBars Med hjälp av denna variabel kan en användare ange antalet barer, för vilka ett medelvärde beräknas. I början används detta värde för beräkning av ett medelvärde. I slingan för summan av maximala och minimala värden beräknas för antalet stavar som motsvarar värdet på variabeln AverBars I de följande två programlinjerna beräknas värdena för indikatoruppsättningselement för indikatorlinjer motsvarande minimala och maximala värden. Medelvärdesmetoden som används här är också Ansökt för beräkningar i den tekniska indikatorn Flyttande medelvärde Om vi ​​bifogar den analyserade anpassade indikatorn och den tekniska indikatorn Moving Average ser vi tre indikatorer ator linjer Om samma period av medelvärde är inställd för båda indikatorerna, kommer rörlig genomsnittslinje att sammanfalla med en av de anpassade indikatorlinjerna för detta ändamål måste parametrarna som beskrivs i Fig 121 anges i de tekniska indikatorinställningarna. Fig. 121 Sammanfallna rader i en teknisk indikator och en anpassad indikator röd linje. Med hjälp av teknisk indikator kan en användare konstruera reflektioner av eventuella regelbundenhet som är nödvändiga i praktiskt arbete. Custom Indicator Options. Drawing Indicator Lines i Separate Windows. MQL4 erbjuder en stor tjänst för att konstruera anpassade indikatorer som gör Användning av dem är mycket praktiskt Speciellt kan indikatorrader dras i ett separat fönster Detta är lämpligt när absolutvärdena för indikatorlinjens amplitud är väsentligt mindre eller större än säkerhetspriserna. Om vi ​​exempelvis är intresserade av skillnaden mellan medelvärdena för baren Maximum och minimum i ett visst historiskt intervall, beroende på tidsramen kommer detta värde att vara lika med a pproximately från 0 till 50 poäng till exempel för M15 Det är inte svårt att bygga en indikatorrad, men i ett säkerhetsfönster kommer denna linje att dras inom intervallet 0-50 poäng av ett säkerhetspris, dvs väsentligt lägre än diagramområdet reflekteras på skärmen Det är väldigt obekvämt. För att rita indikatorlinjer i ett separat fönster som ligger i nedre delen av ett säkerhetsfönster, måste i egenskapsriktningen vid programets startparameterindikatorparametrar anges. I det ögonblick då en sådan indikator är ansluten till ett säkerhetsfönster skapar klientterminalen ett separat fönster under ett diagram, där indikatorlinjer beräknas i indikatorn kommer att dras Beroende på färginställningar och typer av indikatorlinjer kommer de att dras i denna eller den här stilen. Beräkningsberäkningshistorik. I de flesta fall innehåller indikatorlinjer endast användbar information i den senaste historiken. Den del av indikatorlinjer som byggts på gamla staplar kan till exempel knappt 1 månad gammal minut tidsrama knappt anses vara användbar för att fatta handelsbeslut. Förutom om det finns många barer i ett diagramfönster är tiden investerad i beräkningen och ritningen av indikatorlinjer orimligt stor. Det kan vara avgörande för programfelning när ett program ofta sammanställs och sedan startade Det är därför det är nödvändigt att göra beräkningar inte för hela historien, men för den begränsade delen av den senaste barhistoriken. För detta ändamål används en extern variabelhistorik i följande program Värdet av denna variabel beaktas när beräkning av index för den första vänstra raden, med utgångspunkt från vilka element av indikatorraderna måste beräknas. Ytterligare beräkningar i loop-loop kommer att utföras för antalet nya historikfält som inte är större än Historikvärde Obs! Den analyserade metoden för att begränsa en beräkningshistoria gäller Endast den del av beräkningar som utförs i den första starten av specialfunktionen startar Vidare, när nya streck visas, nya delar av indica tor linjer läggs till i den högra delen medan bilden i den vänstra delen kommer att bevaras Således kommer indikatorlinjelängden att ökas under hela indikatorns driftstid. Gemensamt värde för historikparametern anses vara ungefär 5000 bar. Exempel på en enkel anpassning indikatorindikatorlänkar ritas i ett separat fönster. Likartad beräkning av en indikatorlinje utförs i den tekniska indikatorn AverageTrue Range Fig 122 visar en indikatorlinje konstruerad av den anpassade indikatorn i ett separat fönster och en indikatorlinje konstruerad av ATR i ett annat fönster I denna falllinje är helt identisk eftersom medeltiden är densamma för båda indikatorerna. - 5 Om denna parameter ändras i någon av indikatorerna, kommer motsvarande indikeringslinje också att ändras. Fig 122 ritar en anpassad indikatorrad i ett separat fönster Identiska linjer Av en teknisk indikator ATR och en anpassad indikator. Det är också uppenbart att anpassad indikatorlinje är konstruerad inte för wh ole skärmbredd, men för 50 senaste staplar enligt extern variabel Historia Om en näringsidkare behöver använda större historikintervall kan värdet på den externa variabeln enkelt ändras via det anpassade indikatorinställningsfönstret. Fig 123 visar ett säkerhetsfönster i som indikatorlinjen vi ritade i en annan stil - som ett histogram För att få ett sådant resultat ändrades en rad i programkoden - andra linjestilar anges. Alla andra koddelar är oförändrade. Fig 123 Ritning anpassad indikatorlinje i ett separat fönster histogram Likhet med ritningar av en teknisk indikator ATR och en anpassad indikator. Skiftande indikatorlinjer vertikalt och horisontellt. I vissa fall är det nödvändigt att flytta en indikatorrad. Det kan enkelt göras med MQL4. Låt oss analysera ett exempel, i vilken position indikatorlinjer i ett säkerhetsfönster beräknas i enlighet med värden som anges av en användare. Exempel på en anpassad indikator Skiftande indikatorlinjer horisontellt och vertikalt. För justering ng linjer skiftas i ett diagram, det finns två externa variabler - Vänsterrätt för horisontellt skift av alla linjer och UpDown för att skifta två prickade linjer vertikalt. Algoritmen som används för att beräkna värden för motsvarande arrayelement är baserad på mycket enkla regler. För att flytta en linje horisontellt, tilldela det beräknade värdet till ett matriselement, vars index är större av LeftRight för att växla åt höger och mindre för att växla till höger än indexet för en stapel, för vilken beräkningar utförs. för att flytta en linje vertikalt, UpDown Point måste läggas till för att växla uppåt eller förringas för att skifta nedåt till varje värde för en indikatormatris som karakteriserar initiallinjeposition. I det analyserade exemplet beräknas indexen i linjen. Här är jag indexet för en stapel, för vilken beräkningar utförs , k är ett index för ett indikator array element Röd indikatorlinje som visas av klientterminalen baserat på indikatoruppsättningen Line0 flyttas till vänster av 5 barer enligt till anpassade inställningar, se Fig 124 från den ursprungliga linjen I detta fall är initiallinjen ett rörligt medelvärde med medeltiden som motsvarar 5 formeln för MA-beräkningen är High i Low i 2. I detta exempel är positionen för den röda linjen är grunden för beräkningen av indikator array värden för två andra linjer, dvs deras position på diagrammet. Dotade linjer beräknas på detta sätt. Användning av index k för element av alla indikatorfält kan göra beräkningar för element av rader Line1, Line2 på samma streck som används för att beräkna värden för motsvarande grundläggande array Line0 Som ett resultat förskjuts prickade linjer i förhållande till den röda linjen med det värde som anges i indikatorinställningsfönstret, i detta fall med 30 punkter Fig 124.Fig 124 Röd indikatorlinje Skiftas till vänster av 5 barer. Dotted indikatorlinjer flyttas relativt den röda linjen med 30 poäng. Begränsningar av anpassade indikatorer. Det finns några begränsningar i MQL4 som bör beaktas vid programmeringen o f anpassade indikatorer. Det finns en grupp funktioner som endast kan användas i anpassade indikatorer och kan inte användas i Expert Advisors och skript. IndicatorBuffers, IndicatorCounted, IndicatorDigits, IndicatorShortName, SetIndexArrow, SetIndexBuffer, SetIndexDrawBegin, SetIndexEmptyValue, SetIndexLabel, SetIndexShift, SetIndexStyle, SetLevelStyle , SetLevelValue. On den andra sidan kan handelsfunktioner inte användas i indikatorer OrderSend, OrderClose, OrderCloseBy, OrderDelete och OrderModify Detta beror på att indikatorer fungerar i gränssnittsflödet som skiljer sig från expertrådgivare och skript som fungerar i eget flöde. Detta är också varför algoritmer baserade på looping inte kan användas i anpassade indikatorer Start av en anpassad indikator som innehåller en ändlös loop med avseende på den verkliga körtiden kan resultera i att klientterminalen hänger med ytterligare nödvändighet att starta om en dator. De allmänna jämförande egenskaperna hos Expert Advisors, scripts Och indikatorer finns i tabell 2.

Comments