Skip to main content

Forex Strategi 80 20


Forex Strategier Forex Strategi, Enkel strategi, Forex Trading Strategi, Forex Scalping Forex Strategi Schaff-trenden er neppe noe revolusjonerende og ny, men det er ganske lønnsomt og enkelt i lang tid, og det er basert på samme skjermschaff-trendsyklus som suppleres med en stokastisk indikator. For handel anbefaler jeg å velge en av meglerne: FxPro eller Alpari (legger 101 innskudd) hellip Strategy Forex 171Moho187 er basert på et sett med standardindikatorer: MACD-indikator definerer den underliggende trenden (handelsetning), Momentum 8212 viser dagens humør av markedet, og Fractals-indikatoren gir et inngangspunkt, slik at strategien gir et godt fortjeneste innenfor en trend, men det betyr ikke at det er hellip I dag publiserer vi en ganske enkel, men effektiv strategi forex 171Den dobbelte null187, i som bare en indikator og det runde prisnivået med enden i to nuller (for den firesifrede megleren). For handel anbefaler jeg å velge en av meglerne: FxPro eller Alpari (legger til 50 innskudd) Til tross for enkelheten i denne strategien, er hellip Strategy forex 171Fox187 ganske store risici, og dette faktum må vurderes når du slår det inn i tradingsettet ditt (portefølje ) 8212 Forholdet mellom overskuddstap i transaksjoner er noen ganger ikke i trader8217s favør, men den høye nøyaktigheten av signalene ved inngangen til markedet og ekstra filtre hellip Forex strategi 171mbush187 ved første øyekast kan det virke litt forvirrende og komplisert, og egentlig for backtesting av strategien vil kreve betydelig tålmodighet og grundighet, men i reell handel er hele prosessen ganske enkel og logisk: Hovedsignalet forventes ved H4-intervallet der vi bestemmer handelsetningen. Next hellip Last ned MT4 indikator - Money Management Kalkulator: MetaTrader 5 - Trading Systems 80-20 handelsstrategi Introduksjon 80-20 er et navn på en av handelsstrategiene (TS) beskrevet i boken Street Smarts: Kanskje langsiktige handelsstrategier av Linda Raschke og Laurence Connors. Ligner på strategiene som er omtalt i min tidligere artikkel. forfatterne tilskriver det til scenen når prisen tester rekkevidden grenser. Det er også fokusert på å dra nytte av falske breakouts og rollbacks fra grensene. Men denne gangen analyserer vi prisbevegelsen på et betydelig kortere historikkintervall som bare gjelder forrige dag. Livet til et oppnådd signal er også relativt kort, siden systemet er ment for intradaghandel. Det første målet med artikkelen er å beskrive utviklingen av 80-20 handelsstrategisignalmodulen ved hjelp av MQL5-språket. Deretter skal vi koble denne modulen til den litt redigert versjonen av den grunnleggende handelsroboten som ble utviklet i den forrige artikkelen i serien. Dessuten skal vi bruke den samme modulen for å utvikle en indikator for manuell handel. Som allerede sagt, er koden som tilbys i artikkelserien hovedsakelig rettet mot litt avanserte nybegynnere. Derfor er koden, foruten hovedmålet, designet for å kunne flytte fra prosessorprogrammering til objektorienterte. Koden vil ikke ha klasser. I stedet vil det fullt ut implementere strukturer som er enklere å mestre. Enda et annet formål med artikkelen er å utvikle verktøy som gjør det mulig for oss å kontrollere om strategien fortsatt er levedyktig i dag, siden Raschke og Connors brukte markedsadferd i slutten av forrige århundre da de ble opprettet. Noen EA-tester basert på oppdaterte historikkdata presenteres på slutten av artikkelen. 80-20 handelssystem Forfatterne heter George Taylors The Taylor Trading Technique. så vel som Steve Moores jobber på dataanalysen av futuresmarkeder og Derek Gipsons trading erfaring som teoretisk grunnlag for sitt eget arbeid. Essensen av handelsstrategien kan kort beskrives som følger: Hvis de foregående dagene Åpne og Lukk prisene ligger på de motsatte daglige områdene, er sannsynligheten for en reversering mot åpningen av forrige dag svært høy i dag. De forrige dagene Åpne og Lukk prisene bør finne nær rekkeviddeene. Vending bør starte dagens dag (ikke før de forrige dagene lyset er stengt). Strategibestemmelsene for kjøp er som følger: 1. Pass på at markedet åpnet i de øvre 20 og stengte i det nedre 20 av det daglige området i går 2. Vente til dagens Laveste brudd de foregående dagene en minst med 5 kryss 3. Legg inn en kjøpevending på den nedre grensen til yesterdays-serien 4. Når den ventende bestillingen utløser, still inn sin første StopLoss på dagene Lav 5. Bruk tilbakestillingsstopp for å beskytte den oppnådde fortjenesten Selg oppføringsregler er liknende, men yesterdays-linjen skal være bullish, en kjøpsordre bør være plassert i barens øvre kant, mens StopLoss skal plasseres på dagens høyde. En annen viktig detalj er en størrelse på en lukket daglig bar. Ifølge Linda Raschke skal den være stor nok - mer enn gjennomsnittlig størrelse på daglige barer. Hun angir imidlertid ikke hvor mange historiedager som skal tas i betraktning når man beregner gjennomsnittlig daglig rekkevidde. Vi bør også huske på at TS-en er designet utelukkende for intradag-handelseksempler som vises i boken M15-diagrammer. Signalblokken og indikatoren som lager et opplegg i henhold til strategien, er beskrevet nedenfor. Du kan også se noen skjermbilder med indikatoroperasjonsresultatene. De illustrerer tydelig mønstre som svarer til systemreglene og handelsnivåene knyttet til mønstrene. Mønsteranalysen bør resultere i å plassere en kjøpevending. Egnede handelsnivåer er bedre sett på M1-tidsramme: Et lignende mønster med motsatt handelsretning på M5-tidsramme: Dens handelsnivåer (M1-tidsramme): Signalmodul Lets add Tjen resultatnivåberegning for å illustrere å legge til nye alternativer til en tilpasset TS. Det er ikke noe slikt nivå i den opprinnelige versjonen, da det bare er et bakre stopp som brukes til å lukke en posisjon. La oss gjøre Ta fortjeneste avhengig av det tilpassede minimumsnivået (TS8020ExtremumBreak) vi vil multiplisere det med TS8020TakeProfitRatio tilpasset forhold. Vi vil trenge følgende elementer av hovedfunksjonen til feGetEntrySignal-signalmodulene: Nåværende signalstatus, beregnede inn - og utgangsnivåer (Stop Loss og Take Profit), samt ydersidens rekkevidde. Alle nivåer er mottatt via linker til variablene som sendes til funksjonen, mens signalerens returstatus bruker listen over alternativer fra forrige artikkel: enum ENUMENTRYSIGNAL ENTRYBUY, kjøpesignal ENTRYSELL, selgesignal ENTRYNONE, ingen signal ENTRYUNKNOWN status ikke definert ENUMENTRYSIGNAL feGetEntrySignal ( D1 to-lysmønsteranalyse datetime tTime, nåværende tid dobbelt forsterker dEntryLevel, inngangsnivå (link til variabelen) dobbelt amp dSL, StopLoss nivå (link til variabelen) dobbel amp dTP, TakeProfit nivå (link til variabelen) dobbel amp dRangeHigh , Høy av mønstrene 1 st bar (link til variabelen) dobbel forsterker dRangeLow Lav av mønstrene 1 st bar (link til variabelen)) For å oppdage et signal må vi analysere de to siste stolpene i D1 tidsramme. La oss starte fra den første hvis den ikke oppfyller TS-kriteriene, er det ikke nødvendig å sjekke den andre linjen. Det er to kriterier: 1. Barstørrelsen (forskjellen mellom høy og lav) bør overstige gjennomsnittsverdien for de siste XX-dagene (angitt av TS8020D1AveragePeriod-tilpasset innstilling) 2. Bar Åpne og Lukknivåer skal være plassert på motsatt 20 av Bar-området Hvis disse vilkårene er oppfylt, bør høye og lave priser lagres for videre bruk. Siden de første linjeparametrene ikke endres innen hele dagen, er det ikke noe poeng i å sjekke dem ved hvert funksjonsanrop. Lar oss lagre dem i statiske variabler: Tilpassede innstillinger inntast uint TS8020D1AveragePeriod 20 80-20: Antall dager for beregning av gjennomsnittlig daglig rekkevidde-inngang uint TS8020ExtremumBreak 50 80-20: Minimumspause av yesterdays extremum (i punkter) statisk ENUMENTRYSIGNAL sePossibleSignal ENTRYUNKNOWN mønstre først strekksignalretningen statiske dobbelvariabler for lagring av beregnede nivåer mellom flåttene sdEntryLevel 0, sdSL 0. sdTP 0, sdRangeHigh 0. sdRangeLow 0 kontroller mønstrene første linjen på D1: hvis (sePossibleSignal ENTRYUNKNOWN) stLastD1Bar tCurrD1Bar 1 st bar endrer ikke dagens gjennomsnitt daglig rekkevidde dobbelt dAverageBarRange fDAverageBarRange (TS8020D1AveragePeriod, PERIODD1. tTime) hvis (maRates 0.high maRates 0.low lt dAverageBarRange) 1 st bar er ikke stor nok sePossibleSignal ENTRYNONE betyr ikke noe signal i dag returnere (sePossibleSignal) double d20Percents 0.2 (maRates 0.high maRates 0.low) 20 av yesterdays rekkevidde hvis ((bearish bar: maRates 0.open gt maRates 0.high d20Percents bar åpnet i den øvre 20 ampamp ma rates 0.close lt maRates 0.low d20Percents og lukket i nedre 20) (bullish: maRates 0.close gt maRates 0.high d20Percents bar lukket i øvre 20 ampamp maRates 0.open lt maRates 0.low d20Percents og åpnet i nedre 20)) 1 st bar tilsvarer betingelsene definerer dagens handelsretning for mønstrene 1 st bar: sePossibleSignal maRates 0.open gt maRates 0.close. ENTRYBUY. ENTRYSELL markedsinngangsnivå: sdEntryLevel dEntryLevel sePossibleSignal ENTRYBUY. maRates 0.low. maRates 0.high patterns 1 st bar range grenser: sdRangeHigh dRangeHigh maRates 0.high sdRangeLow dRangeLow maRates 0.low else 1 st bar openclose nivåer samsvarer ikke med forholdene sePossibleSignal ENTRYNONE betyr ikke noe signal i dag returnere (sePossibleSignal) Oppføring av funksjonen for å definere gjennomsnittlig bar rekkevidde innenfor angitt antall barer på den angitte tidsrammen som begynner fra den angitte tidsfunksjonen: double fdAverageBarRange (Beregn gjennomsnittlig stangstørrelse int iBarsLimit, hvor mange barer som skal vurderes ENUMTIMEFRAMES eTF PERIODCURRENT. bar tidsramme datetime tTime WRONGVALUE når å begynne beregning) dobbel dAverageRange 0 variabel for summeringsverdier hvis (iBarsLimit lt 1) returnerer (dAverageRange) MqlRates maRates bar info array få barinfo fra det angitte historikkintervallet: hvis (tTime WRONGVALUE) tTime TimeCurrent () int iPriceBars Copy Rates (Symbol. eTF, tTime, iBarsLimit , maRates) hvis (iPriceBars WRONGVALUE) hvis (LogLevel gt LOGLEVELNONE) PrintFor matte (s: Kopieringspriser: feil u. FUNKSJON. Lasterror) returnere (dAverageRange) hvis (iPriceBars lt iBarsLimit) hvis (LogLevel gt LOGLEVELNONE) PrintFormat (s: Kopierpriser: kopierte dine streker av deg. FUNKSJON. IPriceBars, iBarsLimit) summen av intervaller: int iBar iPriceBars mens (iBar-- gt 0 ) dAverageRange maRatesiBar. high maRatesiBar. low gjennomsnittlig verdi: retur (dAverageRange double (iPriceBars)) Det er bare ett kriterium for mønstrene andre (nåværende) strekkavbrudd av yesterdays range grensen bør ikke være mindre enn den som er angitt i innstillingene ( TS8020ExtremumBreak). Så snart nivået er nådd, vises et signal for å plassere en ventende ordre: sjekk mønstrene 2 nd (nåværende) på D1: hvis (sePossibleSignal ENTRYBUY) sdSL dSL maRates 1.low StopLoss til dagens høye hvis (TS8020TakeProfitRatio gt 0 ) sdTP dTP dEntryLevel Punkt TS8020ExtremumBreak TS8020TakeProfitRatio TakeProfit returnerer (er nedadgående pause tydelig sett maRates 1.close lt maRates 0.low Point TS8020ExtremumBreak ENTRYBUY. ENTRYNONE) hvis (sePossibleSignal ENTRYSELL) sdSL dSL maRates 1.high StopLoss til dagens Low if (TS8020TakeProfitRatio gt 0) sdTP dTP dEntryLevel-punkt TS8020ExtremumBreak TS8020TakeProfitRatio TakeProfit-retur (er den oppadgående breakout klart sett maRates 1.close gt maRates 0.high punkt TS8020ExtremumBreak ENTRYSELL. ENTRYNONE) Lagre de to funksjonene nevnt ovenfor (feGetEntrySignal og fdAverageBarRange) og de egendefinerte innstillingene knyttet til mottar et signal til mqh biblioteket filen. Den fullstendige oppføringen er vedlagt nedenfor. Lar navnet filen Signal80-20.mqh og plasser den i riktig katalog i terminaldatamappen (MQL5IncludeExpertSignal). Indikator for manuell handel På samme måte som EA, er indikatoren å bruke signalmodulen beskrevet ovenfor. Indikatoren skal informere en næringsdrivende om å motta et ventende ordreplasseringssignal og gi de beregnede nivåene ordreplassering, ta fortjeneste og stoppfallsnivåer. En bruker kan velge en varslingsmetode et standard popup-vindu, e-postvarsling eller trykkvarsling. Det er mulig å velge alt på en gang eller en kombinasjon du liker. Et annet indikatormål er et handelshistorisk layout i henhold til 80-20 TS. Indikatoren er å markere daglige streker som samsvarer med systemkriteriene og plottet beregnede handelsnivåer. Nivålinjene viser hvordan situasjonen utviklet seg over tid. For klarhet, gjør det slik: Når prisen berører signallinjen, blir den sistnevnte erstattet med en ventende ordrelinje. Når den ventende bestillingen er aktivert, blir linjen erstattet med Ta fortjeneste og Stop Loss-linjer. Disse linjene blir avbrutt når prisen berører en av dem (bestillingen er stengt). Denne utformingen gjør det lettere å evaluere effektiviteten av handelssystemreglene og definere hva som kan forbedres. La oss starte med å deklarere bufferne og deres displayparametere. Først må vi deklarere de to bufferne med fylling av vertikalt område (DRAWFILLING). Den første er å markere det fulle daglige barområdet fra forrige dag, mens en annen er å markere det indre området bare for å skille den fra den øvre og nedre 20 av det spekteret som brukes i TS. Deretter erklæres de to bufferne for den flerfargede signallinjen og den ventende ordrelinjen (DRAWCOLORLINE). Deres farge er avhengig av handelsretningen. Det er andre to linjer (Ta Proft og Stop Loss) med fargene deres gjenværende det samme (DRAWLINE) de skal bruke de samme standardfarger som er tildelt dem i terminalen. Alle valgte skjermtyper, bortsett fra en enkel linje, krever to buffere hver, derfor ser koden ut som følger: Egenskapsindikatorblinkvinduet egenskapsindikatorbuffere 10 egenskapsindikatorplotter 6 egenskapsindikatorlabel1 1 st bar av mønsteregenskapen indikatortype1 DRAWFILLING egenskapsindikatorfarve1 clrDeepPink. clrDodgerBlue egenskap indikatorbredde1 1 egenskap indikatorlabel2 1 st bar av mønsteregenskapen indikatortype2 DRAWFILLING egenskap indicatorcolor2 clrDeepPink. clrDodgerBlue egenskap indikatorbredde2 1 egenskap indikatorlabel3 Signal nivå egenskap indikator type3 DRAWCOLORLINE egenskap indikatorstyle3 STYLESOLID egenskap indikatorfarve3 clrDeepPink. clrDodgerBlue egenskap indikatorbredde3 2 egenskap indikatorlabel4 Entry level egenskap indikatortype4 DRAWCOLORLINE egenskap indikatorstyle4 STYLEDASHDOT egenskap indicatorcolor4 clrDeepPink. clrDodgerBlue property indicatorwidth4 2 Property IndicatorLabel5 Stop Loss Property Indicatortype5 DRAWLINE Eiendomsindikatorstyle5 STYLEDASHDOTDOT Eiendom Indicator Color5 clrCrimson Property Indicator Width5 1 Property Indicator66 Ta Profit Property Indicatortype6 DRAWLINE Property Indicator Style6 STYLEDASHDOTDOT Property Indicator Color6 ClrLime Property Indicator Width6 1 Lar handelsmenn muligheten til å deaktivere fylling av de daglige mønstrene første linjen, velg signalvarslingsalternativer og begrense innstillingsdybden for historikken. Alle handelssysteminnstillinger fra signalmodulen er også inkludert her. For å gjøre dette må vi forutgående oppregne variablene som brukes i modulen, selv om noen av dem bare skal brukes i EA og ikke er nødvendig i indikatoren: Inkluder ltExpertSignalSignal80- 20.mqhgt 80-20 TS signalmodulinngang bool ShowOuter true 1 st bar av mønsteret: Vis hele spekteret bool ShowInner sant 1 st bar av mønsteret: Vis det indre området input bool AlertPopup true Alert: Vis et popup-vindu bane AlertEmail false Alert: Send en e-post input streng AlertEmailSubj Alert: eMail emne input bool AlertPush true Alert: Send et push notifikasjonsinngang uint BarsLimit 2000 Historikk layout dybde (i de nåværende TF barene) ENUMLOGLEVEL LogLevel LOGLEVELNONE Logging modus double buff1stBarOuter, buff1stBarOuterZero, buffere for å plotte hele spekteret av mønstrene 1 st bar buff1stBarInner, buff1stBarInnerZero, buffere for å plotte de indre 60 av mønstrene 1 st bar buffSignal, buffSignalColor, signal linje buffere buffEntry, buffEntryColor, ventende ordrelinjebuffere buffSL, buffTP, StopLoss og TakeProfit linjebuffere gdExtremumBreak 0 TS8020ExtremumBreak i symbolpriser int giD1AveragePeriod 1. Korrekt verdi for TS8020D1AveragePeriod giMinBars WRONGVALUE minimum kreves antall barer for reberegning int OnInit () kontroller den inngåtte TS8020D1AveragePeriod parameteren: giD1AveragePeriod int (fmin (1. TS8020D1AveragePeriod)) konverteringspoeng til symbolpriser: gdExtremumBreak TS8020ExtremumBreak Point minimum kreves antall barer for reberegning antall barer i dagens TF innen en dag giMinBars int (86400 PeriodSeconds ()) indikatorbuffere mål: 1 st bar fullstendig rektangel SetIndexBuffer (0. buff1stBarOuter, INDICATORDATA) PlotIndexSetDouble (0. PLOTEMPTYVALUE. 0) SetIndexBuffer (1. buff1stBarOuterZero, INDICATORDATA) 1 st barer indre område rektangel SetIndexBuffer (2. buff1stBarInner, INDICATORDATA) PlotIndexSetDouble (1. PLOTEMPTYVALUE. 0) SetIndexBuffer (3. buff1stBarInnerZero, INDICATORDATA) signallinje SetIndexBuffer (4. buffSignal, INDICATORDATA) PlotIndexSetDouble (2. PLOTEMPTYVALUE. 0) SetIndexBuffer (5. buffSignalColor, INDICATORCOLORINDEX) ventende ordreplasseringslinje SetIndexBuffer (6. buffEntry, INDICATORDATA) PlotIndexSetDouble (3. PLOTEMPTYVALUE. 0) SetIndexBuffer (7. buffEntryColor, INDICATORCOLORINDEX) SL linje SetIndexBuffer (8. buffert, INDICATORDATA) PlotIndexSetDouble (4. PLOTEMPTYVALUE. 0) TP-linje SetIndexBuffer (9. buffTP, INDICATORDATA) PlotIndexSetDouble (5. PLOTEMPTYVALUE. 0) IndikatorSetInteger (INDICATORDIGITS. Digits) IndikatorSetString (INDICATORSHORTNAME. 80-20 TS) Plasser hovedprogrammerkoden Til den innebygde OnCalculate-funksjonen ordner sløyfen for iterating over den nåværende t Imeframes barer fra fortiden til fremtiden søker dem etter et signal ved hjelp av funksjonen fra signalmodulen. Erklær og initialiser de nødvendige variablene ved å bruke startverdier. Lar oss definere den eldste looplinjen for den første beregningen med tanke på en brukerdefinert historiedybbegrensning (BarsLimit). For etterfølgende anrop beregnes alle strekkene i gjeldende dag (i stedet for den siste linjen), siden to-bar mønsteret egentlig tilhører D1-diagram uavhengig av gjeldende tidsramme. Dessuten bør vi beskytte mot de såkalte fantomene: Hvis vi ikke utfører en tvunget indikatorbuffer som slettes under reinitialisering, forblir ikke lenger relevante fylte områder på skjermen når du bytter tidsrammer eller symboler. Buffertrydningen skal være bundet til den første OnCalculate-funksjonen, etter indikatorinitialisering. Standard forkalkulert variabel er imidlertid ikke tilstrekkelig til å definere om samtalen er den første, siden den kan inneholde null, ikke bare under det første funksjonssamtalen, men også når du endrer kontrollsummen. Vi kan bruke litt tid til å løse dette problemet riktig ved å opprette strukturen som ikke påvirkes av å sette den forutregnede variabelen til null. Strukturen er å lagre og behandle data som ofte brukes i indikatorene: - flagg av OnCalculate-funksjonen første start - telleren av beregnede linjer som ikke er satt til null når du endrer kontrollsummen - flagg for å endre kontrollsummen - flagg i begynnelsen av en ny bar - nåværende bar starttid. Strukturen som kombinerer alle disse dataene, skal deklareres på global nivå. Det skal kunne samle eller presentere data fromto noen innebygde eller tilpassede funksjoner. Lar navnet denne strukturen Brownie. Den kan plasseres til slutten av indikatorkoden. Et enkelt globalt type strukturobjekt som heter goBrownie, skal også deklareres: struct BROWNIE datetime tLastBarTime tid for siste behandlede bar int iPrewCalculated antall beregnede sverd bool bFirstRun første start flagg bool bHistoryUpdated historisk oppdatering flagg bool bIsNewBar ny bar åpning flagg BROWNIE ( ) standardverdier: tLastBarTime 0 iPrewCalculated WRONGVALUE bFirstRun bIsNewBar true bHistoryUpdated false false fReset (bool bResetFirstRun true) standardverdier: tLastBarTime 0 iPrewCalculated WRONGVALUE hvis (bResetFirstRun) bFirstRun true satt til null hvis det er tillatelse bIsNewBar true bHistoryUpdated false void fUpdate (int iNewPrewCalculated WRONGVALUE ) flagg av OnCalculate innebygd funksjon første samtale hvis (bFirstRun ampamp iPrewCalculated gt 0) bFirstRun falsk ny bar datetime tThisBarTime TimeCurrent () - TimeCurrent () PeriodSekunder () bIsNewBar tLastBarTime tThisBarTime oppdaterer nåværende stangtid hvis (bIsNewBar) tLastBar Time tThisBarTime if (iNewPrewCalculated gt - 1) er det noen endringer i historien bHistoryUpdated iNewPrewCalculated 0 ampamp iPrewCalculated gt WRONGVALUE bruker forhåndsberegnet i tilfelle av OnCalculate 1 st call if (iPrewCalculated WRONGVALUE) iPrewCalculated iNewPrewCalculated eller hvis det ikke var noen historisk oppdatering annet hvis (iNewPrewCalculated gt 0) iPrewCalculated iNewPrewCalculated BROWNIE goBrownie Lar informere Brownie av indikatoren de-initialiseringshendelse: void OnDeinit (const int reason) goBrownie. fReset () informere Brownie Om nødvendig kan mengden data lagret av Brownie utvides dersom tilpassede funksjoner eller Klasser trenger priser, volumer eller nåværende strekkspredningsverdi (Åpen, Høy, Lav, Lukk, Tikkvolum, Volum, Spredning). Det er mer hensiktsmessig å bruke ferdige data fra OnCalculate-funksjonen og sende dem via Brownie i stedet for å bruke tidsseriekopieringsfunksjonene (CopyOpen, CopyHigh etc. eller Copy Rates), dette sparer CPU-ressursene og eliminerer behovet for å ordne behandling av feil av disse språkfunksjonene. Lar komme tilbake til hovedindikatorfunksjonen. Deklarere variabler og forberede arrays ved hjelp av goBrownie strukturen, se på følgende måte: goBrownie. fUpdate (prevcalculated) feed data til Brownie int iPeriodBar 0. hjelpeteller iCurrentTFBar ratestotal - int (BarsLimit) barindeks for den nåværende TF loop start statisk datetime stLastD1Bar 0 time av den siste behandlede linjen av paret D1-barer (mønster 2 nd bar) statisk int si1stBarofDay 0 indeksen for dagens dager første bar hvis (goBrownie. bFirstRun) fjerner bufferne under re-initialisering: ArrayInitialize (buff1stBarInner, 0) ArrayInitialize ( (buffEntryColor, 0) ArrayInitialize (buffSignal, 0) ArrayInitialize (buffSignalColor, 0) ArrayInitialize (buffTP, 0) ArrayInitialize (buffSL, 0) ArrayInitialize (buffLent, 0) 0) stLastD1Bar 0 si1stBarofDay 0 annet datetime tTime TimeCurrent () minimum reberegningsdybde - fra forrige dag: iCurrentTFBar ratestotal - Barer (Symbol. PERIODCURRENT. tTime - tTime 86400. tTime) - 1 ENUMENTRYSIGNAL eSignal ENTRYUNKNOWN signal dobbelt dSL WRONGVALUE. SL nivå dTP WRONGVALUE. TP nivå dEntryLevel WRONGVALUE. inngangsnivå dRangeHigh WRONGVALUE. dRangeLow WRONGVALUE grenser av mønstrene 1 st bar rekkevidde datetime tCurrD1Bar 0. nåværende D1 bar tid (mønstre 2 nd bar) tD1BarToFill 0 D1 bar tid som skal fylles (mønster 1 st bar) sørg for at den innledende re-beregning bar indeksen er innenfor akseptabel rekkevidde: iCurrentTFBar int (fmax (0. fmin (iCurrentTFBar, ratestotal - giMinBars))) mens (iCurrentTFBar lt ratestotal ampamp. IsStopped ()) hovedprogramsløyfen skal ligge her. Kontroller tilstedeværelsen av et signal når det skjer over strømmen tidsrammer: eSignal feGetEntrySignal (Time iCurrentTFBar, dEntryLevel, dSL, dTP, dRangeHigh, dRangeLow) hvis (eSignal gt 1) fortsetter ikke noe signal i løpet av dagen baren tilhører Hvis det er et signal på en ny dags første bar, Den forrige daglige linjen skal fylles. Verdien av tD1BarToFill-variabelen av datetime-typen brukes som et flagg. Hvis det er lik WRONGVALUE, er det ikke nødvendig å fylle på denne baren. Signallinjen skal starte på samme første linje, men lar oss forlenge den til den siste linjen i forrige dag for bedre layoutoppfattelse. Siden beregningene av en signallinje, samt linje - og fyllfarger for bullish og bearish-stenger er forskjellige, lar vi lage to lignende blokker: tCurrD1Bar Time iCurrentTFBar Time iCurrentTFBar 86400 begynnelsen av dagen baren tilhører hvis (stLastD1Bar lt tCurrD1Bar) tD1BarToFill Tid iCurrentTFBar 1 Tid iCurrentTFBar 1 86400 si1stBarofDay iCurrentTFBar annet tD1BarToFill WRONGVALUE forrige dag bar, ingen ny fylling kreves stLastD1Bar tCurrD1Hvis du husker om (tD1BarToFill WRONGVALUE) Fylling de forrige dagene D1 bar: iPeriodBar iCurrentTFBar hvis (dEntryLevel lt dRangeHigh) hvis (ShowOuter) - iPeriodBar gt 0) hvis (Time iPeriodBar lt tD1BarToFill) bryte buff1stBarOuterZeroiPeriodBar dRangeLow buff1stBarOuteriPeriodBar dRangeHigh if (ShowInner) iPeriodBar iCurrentTFBar mens (--iPeriodBar gt 0) hvis (Time iPeriodBar lt tD1BarToFill) bryte buff1stBarInnerZeroiPeriodBar dRangeLow 0,2 (dRangeHigh dRangeLow) buff1stBarInneriPeriodBar dRangeHigh 0.2 (DRangeHigh dRangeLow) starten av signallinjen fra de foregående dagene siste linjen buffSignaliCurrentTFBar buffSignaliCurrentTFBar en dRangeLow gdExtremumBreak buffSignalColoriCurrentTFBar buffSignalColoriCurrentTFBar 1 0 else if (ShowOuter) while (--iPeriodBar gt 0) hvis (Time iPeriodBar lt tD1BarToFill) bryte buff1stBarOuterZeroiPeriodBar dRangeHigh buff1stBarOuteriPeriodBar dRangeLow hvis (ShowInner) iPeriodBar iCurrentTFBar mens (--iPeriodBar gt 0) hvis (Time iPeriodBar lt tD1BarToFill) bryte buff1stBarInnerZeroiPeriodBar dRangeHigh 0,2 (dRangeHigh dRangeLow) buff1stBarInneriPeriodBar dRangeLow 0,2 (dRangeHigh dRangeLow) starten av signallinjen fra de foregående dagene siste linjen buffSignaliCurrentTFBar buffSignaliCurrentTFBar en dRangeHigh gdExtremumBreak buffSignalColoriCurrentTFBar buffSignalColoriCurrentTFBar 1 1 Fortsett Fortsett Alle de resterende layoutlinjene skal plottes inne i gjeldende tidsrammer i detaljen. Som allerede nevnt, bør signallinjen ende i baren hvor prisen berørte den. Den ventende ordrelinjen skal starte i samme bar og slutte på linjen, hvor kontakten med prisen oppstår. Ta fortjeneste og Stop Loss-linjene skal starte i samme bar. Oppsettet av mønsteret er ferdig i baren, hvor prisen berører en av dem: Signal linje til krysset av en bar: iPeriodBar iCurrentTFBar hvis (dEntryLevel lt dRangeHigh) mens (iPeriodBar lt ratestotal) hvis (Time iPeriodBar gt tCurrD1Bar 86399) bryte buffSignaliPeriodBar dRangeLow gdExtremumBreak buffSignalColoriPeriodBar 0 if (dRangeLow gdExtremumBreak gt lav iPeriodBar) bryte annet mens (iPeriodBar lt ratestotal) hvis (Time iPeriodBar gt tCurrD1Bar 86399) bryte buffSignaliPeriodBar dRangeHigh gdExtremumBreak buffSignalColoriPeriodBar en if (dRangeHigh gdExtremumBreak lt Høy iPeriodBar) pause Kommandolinjen linjen~~POS=HEADCOMP til krysset ved en bar: hvis (dEntryLevel lt dRangeHigh) mens (iPeriodBar lt ratestotal) hvis (Time iPeriodBar gt tCurrD1Bar 86399) bryter buffEntryiPeriodBar dRangeLow buffEntryColoriPeriodBar 0 hvis (dRangeLow lt High iPeriodBar) hvis (buffEntryiPeriodBar 1 0.) starter og slutter på en enkelt linje, strekk med 1 bar til fortiden buffEntryiPeriodBar 1 dR angeLow buffEntryColoriPeriodBar 1 0 pause ellers mens (iPeriodBar lt ratestotal) hvis (Time iPeriodBar gt tCurrD1Bar 86399) bryte buffEntryiPeriodBar dRangeHigh buffEntryColoriPeriodBar 1 hvis (dRangeHigh gt Low iPeriodBar) hvis (buffEntryiPeriodBar 1 0.) starter og slutter på en enkelt linje, strekk med 1 bar til fortiden buffEntryiPeriodBar 1 dRangeHigh buffEntryColoriPeriodBar 1 1 pause TP og SL linjer til en av dem krysses av en bar: hvis (dEntryLevel lt dRangeHigh) SL er lik Low siden begynnelsen av en dag: dSL Low ArrayMinimum (Lav. si (i dag), hvis det er (iPB), hvis (TimePeriodBar gt tCurrD1Bar 86399) bryter buffSLiPeriodBar dSL buffTPiPeriodBar dTP hvis (dTP lt High iPeriodBar dSL gt Lav iPeriodBar) hvis (buffSLiPeriodBar 1 0.) starter og slutter på en enkelt linje, utvide med 1 bar til fortiden buffSLiPeriodBar 1 dSL buffTPiPeriodBar 1 dTP-pause ellers SL er lik Høyen siden begynnelsen av en dag: dSL High ArrayMaximum (High. si1stBarofDay, iPeriodBar si1stBarofDay) mens (iPeriodBar lt ratestotal) hvis (Time iPeriodBar gt tCurrD1Bar 86399) pause buffSLiPeriodBar dSL buffTPiPeriodBar dTP hvis (dSL lt High iPeriodBar dTP gt Lav iPeriodBar) hvis (buffSLiPeriodBar 1 0.) starter og slutter på en enkelt linje, utvide med 1 bar til fortiden buffSLiPeriodBar 1 dSL buffTPiPeriodBar 1 dTP pause Lets plass anropskoden til fDoAlert-signalvarslingsfunksjonen ut av løkken. Faktisk har den litt bredere muligheter i forhold til de som er involvert i denne indikatoren, funksjonen kan fungere med lydfiler som betyr at dette alternativet kan legges til tilpassede innstillinger. Det samme gjelder for muligheten til å velge separate filer for kjøp og salg av signaler. Funksjon notering: void fDoAlert (Funksjon for sending av signaler og meldinger streng sMessage, varslingsmelding bool bAlert true. Vis et popup-vindu bool bSound false. Spill en lydfil bool bEmail false. Send en e-post bool bNotification false. Send en push notification streng sEmailSubject. eMail emne streng sSound alert. wav lydfil) statisk streng ssPrevMessage det var stillhet forrige varselmelding statisk datetime stPrevTime forrige varsel bar tid datetime tThisBarTime TimeCurrent () PeriodSekunder () PeriodSekunder () nåværende bar tid hvis (ssPrevMessage sMessage stPrevTime tThisBarTime) en annen andor 1 st i denne linjen husk: ssPrevMessage sMessage stPrevTime tThisBarTime danner en meldingsstreng: sMessage StringFormat (ssss, TimeToString (TimeLocal (), TIMESECONDS), lokal tid Symbol. symbol StringSubstr (EnumToString (ENUMTIMEFRAMES (Periode)), 7) TF sMessage melding) aktivere varslingssignal: hvis (bAlert) Alert (sMessag e) hvis (bEmail) SendMail (sEmailSubject Symbol. sMessage) hvis (bNotification) SendNotification (sMessage) hvis (bSound) PlaySound (sSound) Koden for å sjekke behovet for å ringe funksjonen og danne teksten for den som befinner seg i programlegemet før ferdigstillelsen av OnCalculate-hendelsesbehandleren: varsling iPeriodBar ratestotal 1 nåværende bar hvis (AlertPopup AlertEmail AlertPush 0) returnerer (ratestotal) alt er deaktivert hvis (buffSignaliPeriodBar 0) returnerer (ratestotal) ingenting å fange enda (eller allerede) hvis (buffSignaliPeriodBar gt High iPeriodBar buffSignaliPeriodBar lt Low iPeriodBar) returnerer (ratestotal) no signal linje berører meldingstekst: streng sMessage StringFormat (TS 80-20: trengs ss, TP: s, SL: s, buffSignalColoriPeriodBar gt 0. BuyStop. SellStop, DoubleToString (dEntryLevel, sifre), DoubleToString (dTP, sifre), DoubleToString dSL, sifre)) varsel: fDoAlert (sMessage, AlertPopup, false. AlertEmail, AlertPush, AlertEmailSubj) retur (ratestotal) fullstendig OnCalculate-drift Hele kilden c ode av indikatoren finnes i vedlagte filer (TS80-20.mq5). Handelsoppsettet i henhold til systemet er best sett på minuttdiagrammer. Vær oppmerksom på at indikatoren bruker stangdataene i stedet for å tippe sekvenser i stolper. Dette betyr at hvis prisen krysset flere layout linjer (for eksempel Ta fortjeneste og Stopp Loss linjer) på en enkelt linje, kan du ikke alltid definere hvilken av dem som ble krysset først. En annen usikkerhet stammer fra det faktum at start - og sluttlinjene ikke kan falle sammen. Ellers vil linjene fra bufferen i DRAWLINE og DRAWCOLORLINE-typer ganske enkelt være usynlige for en bruker. Disse funksjonene reduserer oppsettets nøyaktighet, men det er fortsatt ganske klart. Ekspertrådgiver for testing av 80-20 handelsstrategi Den grunnleggende EA for teststrategier fra boken Street Smarts: Kanskje langsiktige handelsstrategier ble beskrevet i detaljer i den første artikkelen. Lets insert two significant changes in it. First, the signal module is to be used in the indicator as well meaning it would be reasonable to set trading levels calculation in it. We have already done this above. Apart from the signal status, the feGetEntrySignal function returns order placement, Stop Loss and Take Profit levels. Therefore, lets remove the appropriate part of the code from the previous EA version adding the variables for accepting levels from the function and edit the function call itself. The listings of the old and new code blocks can be found in the attached file (strings 128-141). Another significant addition to the basic EA code is due to the fact that, unlike the previous two, this TS deals with a short-term trend. It assumes that the roll-back happens once a day and is unlikely to be repeated. This means that the robot has to make only one entry ignoring the existing signal all the rest of the time until the next day. The easiest way to implement that is to use a special flag static or global variable of bool type in the program memory. But if the EA operation is interrupted for some reason (the terminal is closed, the EA is removed from the chart, etc.), the flag value is lost as well. Thus, we should have the ability to check if todays signal was activated previously. To do this, we may analyze the history of trades for today or store the date of the last entry in the terminal global variables rather than in the program. Let us use the second option since it is much easier to implement. Provide users with the ability to manage one entry per day option and set an ID of each launched version of the robot it is needed to use global variables of the terminal level: input bool OneTrade false One position per day input uint MagicNumber 2016 EA magic number Lets add the variables necessary to implement one entry per day option to the programs global variables definition block. Initialize them in the OnInit function: string gsPrefix identifier of (super)global variables bool gbPositionToday false , gbPendingToday false Create a prefix of (super)global variable names: gsPrefix StringFormat ( SSB s u s. Symbol. MagicNumber, MQLInfoInteger ( MQLTESTER ). t . ) Has the robot worked with market or pending orders today gbPositionToday int ( GlobalVariableGet (gsPrefix LastPositionDate )) TimeCurrent () TimeCurrent () 86400 gbPendingToday int ( GlobalVariableGet (gsPrefix LastPendingDate )) TimeCurrent () TimeCurrent () 86400 Here the robot reads the values of global variables and compares the written time with the day start time, thus defining if the todays signal has already been processed. Time is written to the variables in two places lets add the appropriate block to the pending order installation code (additions highlighted): if (iTry - 10 ) if (LogLevel gt LOGLEVELNONE) Print ( Pending order placing error ) the distance from the current price is not enough :( if (LogLevel gt LOGLEVELERR) PrintFormat ( Pending order cannot be placed at the s level. Bid: s Ask: s StopLevel: s , DoubleToString (dEntryLevel, Digits ), DoubleToString (goTick. bid, Digits ), DoubleToString (goTick. ask, Digits ), DoubleToString (gdStopLevel, Digits ) ) else to update the flag: GlobalVariableSet ( in the terminal global variables gsPrefix LastPendingDate , TimeCurrent () TimeCurrent () 86400 ) gbPendingToday true in the program global variables The second block is placed after the code defining a newly opened position: if ( PositionSelect ( Symbol )) if ( PositionGetDouble ( POSITIONSL ) 0 .) if (gbPositionToday) update the flag: GlobalVariableSet ( in the terminal global vari ables gsPrefix LastPositionDate , TimeCurrent () TimeCurrent () 86400 ) gbPositionToday true in the program global variables . These are the only significant changes in the previous EA version code. The finalized source code of the new version is attached below. Strategy backtesting In order to illustrate the trading system viability, its authors use patterns detected on the charts from the end of the last century. Therefore, we need to check its relevance in todays market conditions. For testing, I took the most popular Forex pair EURUSD, the most volatile pair USDJPY and one of the metals XAUUSD. I increased the indents specified by Raschke and Connors 10 times, since four-digit quotes were used when the book was written, while I tested the EA on five-digit ones. Since there is no any guidance concerning the trailing parameters, I have selected the ones that seem to be most appropriate to daily timeframe and instrument volatility. The same applies to the Take Profit calculation algorithm added to the original rules the ratio for its calculation was chosen arbitrarily, without deep optimization. The balance chart when testing on the five-year EURUSD history with the original rules (no Take Profit): The same settings and Take Profit: The balance chart when testing the original rules on the five-year USDJPY history: The same settings and Take Profit: The balance chart when testing the original rules on the daily gold quotes for the last 4 years: The full data on the robot settings used in each test can be found in the attached archive containing the complete reports. Conclusion The rules programmed in the signal module match the 80-20 trading system description provided by Linda Raschke and Laurence Connors in their book Street Smarts: High Probability Short-Term Trading Strategies. However, we have extended the original rules a bit. The tools (the robot and the indicator) are to help traders draw their own conclusions concerning the TS relevance in todays market. In my humble opinion, the TS needs a serious upgrade. In this article, I have tried to make some detailed comments on developing the code of the signal module, as well as the appropriate robot and indicator. I hope, this will help those who decide to do the upgrade. Apart from modifying the rules, it is also possible to find trading instruments that fit better to the system, as well as signal detection and tracking parameters. FOREX Strategies Forex Strategy, Simple strategy, Forex Trading Strategy, Forex Scalping Forex Strategy 80-20 8212 another very simple and quite an interesting strategy forex Linda Raschke (previously we looked at 2 of its strategy: Turtle Soup, Turtle Soup plus One ), in which trade is conducted only on the daily range (D1) and trading signals are only During the 1 st trading day. Investigating the patterns of financial markets, it was noted that if the price on the market closes at the top or bottom 10 -20 of its daily range, then there is a possibility and it is 80 -90, the next morning, the price will continue to move in the same direction (ie towards the closing day candles), but eventually the price closes above or below this candle in only 50 of cases . That8217s a given fact (a chance to turn in the middle of the 2 nd day after the close of the 1 st day candles), and allowed 80-20 strategy exist and be popular in the financial markets. So, let8217s look at how deals are made in Forex Strategy 80-20 . an example of the transaction on the purchase . Suppose we open a trading terminal MetaTrader 4 today and note that: 1) Yesterday8217s daily candle was discovered in the upper 20 of its daily range and closed in the bottom 20 of its daily range. Ie If the daily candle divided into 5 parts, the opening price of yesterday8217s daily candle is in the top 1 5 of a closed candle. And the closing price is at the bottom 1 5 of the closed day candles. Figure 1. Dedicated bearish candle was discovered in 1 5 of the upper range and closed at 1 5 of its lower range 2) Today8217s daily candle opens and the price at the market went in the same direction as the close of the previous daily candle 8212 ie for sale, presumably for at least 10-15 points. 3) At this moment, when the price is already below yesterday8217s low and we have clearance to be placed pending order, we set the pending order to buy the type Buy Stop at yesterday8217s low price Figure 2. This is the same candle as in Figure 1, only the hourly interval. Expose the pending order to buy at a time when the price of the 2 nd hour candle falls below yesterday8217s low. 4) After the opening of trading positions in the purchase, we will establish a safety stop-loss orders below a few points (3-5) segodneshnego minimum. 5) Next, use a trailing stop (Universal trailing stop. the standard in Metatrader 4, or a trailing stop on the 1 st paragraph ) to lock in profits and tightens our stop-loss at a safe distance that you define for themselves, depending on the the chosen currency pair and the volatility in the forex market. For example, if the amount of daily candles 100-200 points, and trailing stop should be placed at a distance 50-70-100 points. Candle 50-70 points 8212 tryling-stop: 25-30 points. 6) If you prefer, you can put a profit target at a distance of at least 3.2 times the initial stop-loss (as required by our Money Management Forex ). Or record profits on the important Fibonacci levels. built by the first candle (38,2, 61,8) 7) Or you can simply rearrange the position of zero level. as soon as you see fit and leave the deal by the end of the trading day, and then look to close it or leave open. But I personally believe that it is better to use a trailing stop to lock in profits. For transactions on sale 8212 the rules of the opposite Figure 3. Vystalyaem pending order to sell Sell Stop, when the price broke yesterday makismum. Stop-loss is 10-15 points higher than this maximum, because price is not too moved away from him and turned around. Note: The transactions in this strategy are not as common, but if you observe the laws of several currency pairs, the probability of the conditions and the entry into the market will garazdo above By this strategy, forex trading you can buy Note: if you want to receive updates Expert Advisor - LEAVE positive feedback in the store Plati. ru without specifying e-mail in the body of reviews e-mail please indicate on the payment page 8212 which indicates where the goods will be delivered Subject to strict adherence to rules of the forex strategy 80-20, we get approximately the following trading results ( test results Adviser 80-20 strategy ): 1) Test strategies forex 80-20 8212 EURUSD (D1) with Expert Advisor 80-20 strategy 2) Test strategies forex 80-20 8212 EURJPY (D1) with Expert Advisor 80-20 strategy 3) test strategies forex 80-20 8212 USDCAD (D1) with Expert Advisor 80-20 strategyForex Strategy 80-20 - another very simple and quite an interesting strategy forex Linda Raschke (previous ly we looked at 2 of its strategy: Turtle Soup, Turtle Soup plus One ), in which trade is conducted only on the daily range (D1) and trading signals are only During the 1 st trading day. I recommend selecting a Broker Forex with Terminal MetaTrader 4 . Investigating the patterns of financial markets, it was noted that if the price on the market closes at the top or bottom 10 -20 of its daily range, then there is a possibility and it is 80 -90, the next morning, the price will continue to move in the same direction (ie towards the closing day candles), but eventually the price closes above or below this candle in only 50 of cases . Thatrsquos a given fact (a chance to turn in the middle of the 2 nd day after the close of the 1 st day candles), and allowed 80-20 strategy exist and be popular in the financial markets. So, letrsquos look at how deals are made in Forex Strategy 80-20 . an example of the transaction on the purchase. Suppose we open a trading terminal MetaTrader 4 today and note that: 1) Yesterdayrsquos daily candle was discovered in the upper 20 of its daily range and closed in the bottom 20 of its daily range. Ie If the daily candle divided into 5 parts, the opening price of yesterdayrsquos daily candle is in the top 1 5 of a closed candle. And the closing price is at the bottom 1 5 of the closed day candles. Figure 1. Dedicated bearish candle was discovered in 1 5 of the upper range and closed at 1 5 of its lower range 2) Todayrsquos daily candle opens and the price at the market went in the same direction as the close of the previous daily candle - ie for sale, presumably for at least 10-15 points. 3) At this moment, when the price is already below yesterdayrsquos low and we have clearance to be placed pending order, we set the pending order to buy the type Buy Stop at yesterdayrsquos low price Figure 2. This is the same candle as in Figure 1, only the hourly interval. Expose the pending order to buy at a time when the price of the 2 nd hour candle falls below yesterdayrsquos low. 4) After the opening of trading positions in the purchase, we will establish a safety stop-loss orders below a few points (3-5) segodneshnego minimum. 5) Next, use a trailing stop (Universal trailing stop. the standard in Metatrader 4, or a trailing stop on the 1 st paragraph ) to lock in profits and tightens our stop-loss at a safe distance that you define for themselves, depending on the the chosen currency pair and the volatility in the forex market. For example, if the amount of daily candles 100-200 points, and trailing stop should be placed at a distance 50-70-100 points. Candle 50-70 points - tryling-stop: 25-30 points. 6) If you prefer, you can put a profit target at a distance of at least 3.2 times the initial stop-loss (as required by our Money Management Forex ). Or record profits on the important Fibonacci levels, built by the first candle (38,2, 61,8) 7) Or you can simply rearrange the position of zero level. as soon as you see fit and leave the deal by the end of the trading day, and then look to close it or leave open. But I personally believe that it is better to use a trailing stop to lock in profits. For transactions on sale - the rules of the opposite Figure 3. Vystalyaem pending order to sell Sell Stop, when the price broke yesterday makismum. Stop-loss is 10-15 points higher than this maximum, because price is not too moved away from him and turned around. Note: The transactions in this strategy are not as common, but if you observe the laws of several currency pairs, the probability of the conditions and the entry into the market will garazdo abovBy this strategy, forex trading you Expert Advisor to the 80-20 strategy Subject to strict adherence to rules of the forex strategy 80-20, we get approximately the following trading results ( test results Adviser 80-20 strategy ): 1) Test strategies forex 80-20 - EURUSD (D1) with Expert Advisor 80-20 strategy 2) Test strategies forex 80-20 - EURJPY (D1) with Expert Advisor 80-20 strategy 3) test strategies forex 80-20 - USDCAD (D1) with Expert Advisor 80-20 strategy

Comments

Popular posts from this blog

Flytting Gjennomsnitt Vs Lav Pass Filter

Den bevegelige gjennomsnittet som et filter Det bevegelige gjennomsnittet brukes ofte til utjevning av data i nærvær av støy. Det enkle glidende gjennomsnittet blir ikke alltid gjenkjent som FIT-filteret (Finite Impulse Response), det er det, men det er faktisk et av de vanligste filtre i signalbehandling. Ved å behandle det som et filter, kan det sammenlignes med f. eks. Windowed-sinc filtre (se artiklene på lavpass, høypass og bandpass og bandavvisningsfiltre for eksempler på dem). Den store forskjellen med de filtre er at det bevegelige gjennomsnittet er egnet for signaler som den nyttige informasjonen er inneholdt i tidsdomene. hvorav utjevningsmålinger ved gjennomsnittsverdi er et godt eksempel. Windowed-sinc filtre, derimot, er sterke utøvere i frekvensdomene. med utjevning i lydbehandling som et typisk eksempel. Det er en mer detaljert sammenligning av begge typer filtre i Time Domain vs Frekvensdomenes ytelse av filtre. Hvis du har data som både tid og frekvensdomene er viktige...

Forex Vps Tjeneste

HVA ER VPS FOR FOREX TRADING. Er du en MT4-handelsmann på jakt etter et pålitelig sted å handle Forex hver gang Er din oppgave å handle Forex fra hvor som helst. Har du lurt på fra sted til sted, på jakt etter en stabil og pålitelig VPS-plattform for å handle Forex Forex Hvis alle disse inkvisisjonene koker i tankene dine, er FreeVPSforex stedet å være. Dette er fordi Forex fra vår service forblir stabil og pålitelig. Vår VPS er en pakke dedikert til et amerikansk datasenter med høy spesifikasjon. En fantastisk ting om vår tjeneste er at systemet aldri vil gå tapt 100 prosent Vår tjeneste bruker skytserverteknologi for å sikre at eksperthandlerne forexaksjonshandlere får tilgang til konkurransedyktige priser Ikke desto mindre er vår svingstid for å svare på klienter som trenger lyd, eksepsjonell. Dette betyr at det alltid er mulig å handle raskt på vår service. Våre VPS-tjeneste opererer på toppskjerm-cloud server Du er sikker på å oppdage flere nettverk ved hjelp av vår tjeneste, tid ...

Lokal Exchange Trading System Dublin

Dublin Favør Exchange Community Timebank. Welcome til den berikende opplevelsen som venter på deg når du reiser inn i Timebanking. WHAT IS TIMEBANKING. Timebanking er en måte å handle på ferdigheter i et fellesskap I stedet for penger blir tidskreditter kjent som Favors brukt som betaling Du tjener tidskreditter for arbeidet du gjør, og bruker dem til å kjøpe et annet medlems tid til å få de tjenestene du trenger. Alle s Tid er like. Uansett hvilken type arbeid er gjort, er hver person like verdsatt. Å skape fellesskap En handel om gangen. Når vi begynner å dele våre ferdigheter og bli kjent med hverandre, begynner vi å utvikle en følelse av tilkobling og vi bygger samfunn. Vi skjønner at vi har enorme ressurser akkurat der vi er. Disse ressursene kan være i ferdighetene og kunnskap som vi besitter, i de tingene vi kan låne til hverandre eller i støtten og hjelpe oss med å gi hverandre. Timebanking skiller seg fra den finansielle verden. Handel i et fellesskap holder rikdommen der den ...