Forex-Volumenindikatoren Einer der Hauptindikatoren für die Markttransaktionen ist das Volumen der Transaktionen. Das Volumen der abgeschlossenen Transaktionen ist durch eine aktive Beteiligung der Marktteilnehmer, ihre Stärke und Intensität gekennzeichnet. Das Volumen steigt mit einem stetigen Aufwärtstrend, wenn der Preis steigt, und verringert sich hiermit, wenn der Preis sinkt. Das gleiche geschieht mit einem Abwärtstrend, das Volumen steigt, wenn die Preise fallen und sinken, wenn die Preise steigen. Eines der Hauptmerkmale von Volume ist, dass es immer ein wenig vor dem Preis. Im Forex-Markt gibt es in der Regel keine Möglichkeit, das direkte Volumen der Transaktionen anzuzeigen, deshalb wird ein Indikator namens Volume, der die Anzahl der Preisänderungen (Ticks) während einer Bar widerspiegelt, erstellt. Dieser Indikator zeigt die Aktivität der Preisänderungen an und es wird angenommen, dass diese Aktivität gut mit dem realen Transaktionsvolumen korreliert. AccumulationDistribution ist ein volumenbasierter Indikator für die technische Analyse, der dazu dient, kumulative Zuflüsse und Geldabflüsse für einen Vermögenswert widerzuspiegeln, indem man die Preise mit Höhen und Tiefen vergleicht und die Relation nach Handelsvolumina gewichtet. Der Money Flow Index (MFI) ist ein technischer Indikator, der entwickelt wurde, um die Influenz des Geldzuflusses zu einem bestimmten Vermögenswert zu berechnen, indem Preiserhöhungen und - abnahmen über einen bestimmten Zeitraum verglichen werden, aber auch unter Berücksichtigung des Handelsvolumens. On-Balance-Volumen (OBV) ist ein kumulatives, volumenbasiertes Tool, das die Beziehung zwischen der Menge der Geschäfte und den Vermögensbewegungen zeigen soll. IFCMARKETS. CORP 2006-2017 IFC Markets ist ein führender Makler auf den internationalen Finanzmärkten, der Online Forex Trading Services sowie zukünftige Index-, Aktien - und Rohstoff-CFDs anbietet. Das Unternehmen arbeitet seit 2006 kontinuierlich und bedient seine Kunden in 18 Sprachen in 60 Ländern weltweit, in Übereinstimmung mit internationalen Standards der Vermittlungsdienste. Risiko-Warnung Hinweis: Forex-und CFD-Handel im OTC-Markt mit erheblichen Risiken und Verluste können Ihre Investitionen übersteigen. IFC Markets bietet keine Dienste für United States und Japan an. TL-User: Idea Changing Linear MT4 Charts zu logarithmischen Charts Mitglied seit Nov 2011 Status: Mitglied 595 Beiträge Hallo, ich habe eine ganz besondere Idee für alle, die MT4MT5 dafür verantwortlich machen, dass sie nicht zeichnen Richtige und korrekte Trendlinien mit den Linear Charts, die MT4MT5 verwendet. Kann jeder Coder diesen Periodenkonverter von den normalen MT4 - Arithmetik - Linear-Charts auf logarithmische Chart-Skala ändern. Ich denke, das ist der einzige Weg, um logarithmische Charts in MT4MT5 für alle technischen Trendline-Lovers zu bekommen. Hier ist die indi und der Quellcode: ------------------------------------ ----- ------------------------- PeriodConverterOpt. mq4 Copyright (c) 2005, MetaQuotes Software Corp. metaquotes Ver.1.6 Geändert durch micclly Ver.1.5 Geändert durch Fai Geändert von wfy05talkforex basierend auf PeriodConverter talkforex ------------------------------------ ------ ------------------------ Eigenschaft copyright quotwfy05talkforex quot property link quotmql4codebaseindicators277quot property indicatorchartwindow I. Features: Dies ist eine verbesserte Version des Periodenwandlers für MT4 auf der Grundlage der MT4s Default Periodenwandler von Metaquotes. Das Standard-Periodenkonverter-Skript unterstützt keine Echtzeit-Auffrischung und verbraucht viel CPU (50-9x), wodurch das gesamte System langsam wird. Auch das Standard ist ein Skript, das nicht gespeichert wird, wenn du MT4 beende, also musst du jedes Conversion-Skript nach dem Neustart erneut anwenden, ganz nervig. Dies behoben alle oben genannten Probleme: 1. Echtzeit-Aktualisierung oder benutzerdefinierte Intervall Millisekunden Ebene Aktualisierung. 2. Niedrige CPU-Kosten, durchschnittlich 5-10 oder weniger. 3. Funktioniert als Indikator, also kann beim Neustart gespeichert und neu geladen werden. 4. Es gibt keinen Konverter pro Diagrammbegrenzung, da es kein Skript mehr ist, können Sie nur ein Fenster als Quelle verwenden, um so viele neue Zeitrahmen-Diagramm wie möglich zu erzeugen. 5. Automatische Aktualisierung, wenn ein neuer Historienblock geladen ist. II. Wie zu verwenden: Kopiere die mq4-Datei in deinen MT4-Indikator-Ordner (Expertenindikatoren), um sie als Indikator zu installieren, NICHT Skript. Dann in der benutzerdefinierten Indikatorliste anhängen periodconverteropt auf das Diagramm, das du willst. Es unterstützt 4 Parameter: PeriodMultiplier: neuer Perioden-Multiplikatorfaktor, Default ist 2 UpdateInterval: Aktualisierungsintervall in Millisekunden, Null bedeutet Update Echtzeit. Default ist null. Aktiviert: Sie können es deaktivieren, ohne es mit dieser Option zu entfernen. Andere Parameter sind Kommentare oder zum Debuggen, es ist sicher, sie zu ignorieren. Stellen Sie außerdem sicher, dass Sie die Option "Dll-Importe zulassen" in der gängigen Registerkarte eingecheckt haben oder es wird nicht funktionieren. Danach File-gtOpen Offline, um die generierten Offline-Daten zu öffnen. Dann werden die Offline-Daten automatisch aktualisiert. Solange Sie das Quell-Diagramm offen halten und der Konverter-Indikator läuft, wird das generierte Diagramm mit Indikatoren im Inneren immer aktualisiert. Auch du kannst das generierte Diagramm schließen und später noch einmal von File-gtOpen offline ohne Problem öffnen. Wenn du MT4 beenden willst, kannst du diese Offline-Chart als andere normale Online-Charts verlassen. Wenn du MT4 beim nächsten Mal anfängst, werden diese Charts auch geladen und aktualisiert. III. Anmerkungen: 1. Deaktivieren Sie die Option quotoffline chartquot nicht in den gemeinsamen Eigenschaften des Offline-Charts. Oder nach MT4 Neustart, wird es behandeln, dass Diagramm als Online-Diagramm und fordern Sie die Daten vom Server, resultierende leere Chart-Fenster. 2. Sie können mehr als einen Konverter an das gleiche Fenster mit verschiedenen PeriodMultiplier anhängen, z. B. können Sie 3 Konverter mit PeriodMultiplier 2, 4, 10 bis M1 anfügen, um M2, M4, M10 gleichzeitig zu erzeugen. Es ist sogar ok, das M1-Diagramm zu verwenden, um Stundendiagramm wie H2 zu erzeugen, das bei der Erstkonvertierung nur noch ein paar CPU-Ressourcen kostet. Aber in der Regel die meisten Server haben nicht viel Daten für die kurze Zeit. Resultierend die erzeugten Daten ist lange genug für lange Zeit. So wird es vorgeschlagen, HourlyDaily Charts als Quelle zu verwenden, wenn nötig. 3. Der Echtzeit-Aktualisierungsmodus aktualisiert zitiert so schnell wie möglich, aber da dies über Skript erfolgt, und MT überspringen calling start () - Funktion, wenn dein PC beschäftigt ist und viele Zitate Einkommen. Sowieso passiert dies selten, und man kann mindestens 10 Updates pro Sekunde bekommen, was viel mehr als genug ist. 4. Das Offline-Diagramm hat keine Gebotszeile, die im Diagramm zeigt, aber alle Daten im Diagramm einschließlich der Indikatoren werden noch aktualisiert, also mach dir keine Sorgen. Sie können die Gebotszeile anzeigen, indem Sie die Option quotoffline chartquot in den Diagrammeigenschaften aufheben. Aber was hilft nicht viel und wenn Sie vergessen, Quittung Chartquot-Option vor dem Ausstieg zu überprüfen. Es wird Fehler verursachen und beim nächsten Start leer werden. Du musst das Fenster schließen und von File-gtOpen offline wieder öffnen, was dem Problem nicht wert ist. IV. Geschichte: 2014.03.10 1.6 Geändert zur Unterstützung von Build 600 und später 2009.08.07 1.5 Hinzufügen von 3 Optionen (ShiftTiming, GMTShift, OmitD igit) 2005.12.24 1.4 schneller zu erkennen, ob Daten durch das Entfernen von Float-Point-Operationen geändert wurden, Unterstützung für die Ausgabe von CSV hinzugefügt Datei in Echtzeit. OutputCSVFile 0 bedeutet kein CSV. OutputCSVFile 1 bedeutet CSV HST OutputCSVFile 2 CSV nur, kein HST. (Nützlich, wenn Sie CSV für eingebaute Perioden generieren möchten) CSV Dateiname ist die gleiche wie HST-Datei mit Ausnahme der Erweiterung. Fügte eine sichere Kontrolle für PeriodMultiplier hinzu. 2005.12.04 1.3 Fehlende fehlende Daten, wenn es große Datenmengen gibt, die in mehreren Blöcken geladen sind, und die automatische Aktualisierung zu unterstützen, wenn der neue Verlauf geladen wird. 2005.11.29 1.2 Zusätzliche Fixierung für fehlende Daten und Serverwechsel. 2005.11.29 1.1 Fehlende fehlende Teildaten nach Neustart feste. Reinitialisieren nach dem Ändern von Server oder Daten beschädigt. 2005.11.28 1.0 Initial Release extern double Version 1.6 Code Version extern string BuildInfo quot2014.03.10 von miccllyquot extern int PeriodMultiplier 1 neue Periode Multiplikator Faktor extern int AusgangCSVFile 0 auch Ausgabe CSV Datei extern int UpdateInterval 0 Aktualisierungsintervall in Millisekunden, Null bedeutet Update Real - Zeit. Extern bool Enabled true extern bool Debug false extern int ShiftTiming 00-3, Verwendung von H1Chart und PeriodMultiplier4 if 1, ServerH4Chart 00: 0004: 0008: 0012: 00. GtOfflineH4Chart 01: 0005: 0009: 0013: 00. Extern int GMTShift 0 if 9, ServerTime GMT0 - gt OfflineChartTime GMT9 extern int OmitDigit 0 if 1, 5Digits - gt 4Digits int FileHandle -1 int CSVHandle -1 int NewPeriod 0 string MySymbol quotquot int ShiftBase definieren OUTPUTHSTONLY 0 definieren OUTPUTCSVHST 1 definieren OUTPUTCSVONLY 2 definieren CHATECMDUPDATEDATA 33324 void DebugMsg (String msg) if (Debug) Alert (msg) int init () ShiftBase Period () 60sec string Suffix quotquot if (ShiftTiming 0) Suffix StringConcatenate (Suffix, quotsquot, Shift Timing) Wenn (GMTShift 0) Suffix StringConcatenate (Suffix, Quatsch, GMTSh ift) Wenn (OmitDigit 0) Suffix StringConcatenate (Suffix, Quoquot, OmitDigit) MySymbol Symbol () Quittungssuffix if (StringLen (MySymbol) gt11) MySymbol StringConcatenate (StringSubstr (MySy mbol, 0,11-StringLen ( Suffix)), Suffix) sichere Kontrolle für PeriodMultiplier. If (PeriodMultiplier lt 1 ampamp Suffix quotquot) nur Ausgabe CSV-Datei PeriodMultiplier 1 OutputCSVFile 2 NewPeriod Period () PeriodMultiplier if (OpenHistoryFile () lt 0) return (-1) WriteHistoryHeader () UpdateHistoryFile () - Recht (; (CSVHandle gt 0) FileClose (CSVHandle) CSVHandle -1 int OpenHistoryFile () String Namensname MySymbol NewPeriod if (OutputCSVFile OUTPUTCSVONLY) (0) Dateigröße if (FileHandle gt 0) FileClose (FileHandle) FileHandle FileOpenHistory (name quot. hstquot, FILEBINFILEWRITEFILESHAREREAD) if (FileHandle lt 0) return (-1) if (OutputCSVFile OUTPUTHSTONLY) CSVHandle FileOpen (name quot. csvquot, FILECSVFILEWRITEFILESHAREREAD FILEANSI,,) Wenn (CSVHandle lt 0) zurückkehren (-1) Return (0) int WriteHistoryHeader () string ccopyright int idigits Digits-OmitDigit int iunused13 int Version 400 if (FileHandle lt 0) return (-1) ccopyright quot (C) opyright 2003, MetaQuotes Software Corp. quot FileWriteInteger (FileHandle, Version, (FileHandle, NewPeriod, LONGVALUE) FileWriteInteger (FileHandle, Idigits, LONGVALUE) FileWriteInteger (FileHandle, 0, LONGVALUE) timesign FileWriteInteger (FileHandle, 0, LONGVALUE) FileWriteString (FileHandle, ) Lastsync FileWriteArray (FileHandle, iunused, 0, ArraySize (iunused)) return (0) statische Doppel-Dopen, dlow, dhigh, dclose, dvolume statisch int itime void WriteHistoryData () if (FileHandle gt 0) FileWriteInteger (FileHandle, itimeGMTShift6060, LONGVALUE ) FileWriteDouble (FileHandle, DLL, DOUBLEVALUE) FileWriteDouble (FileHandle, Dell, DOUBLEVALUE) FileWriteDouble (FileHandle, Dell, DOUBLEVALUE) FileWriteDouble (FileHandle, DLL, DOUBLEVALUE) FileWriteDouble (FileHandle, - OmitDigit FileWrite (CSVHandle, TimeToStr (itime, TIMEDATE), TimeToStr (itime, TIMEMINUTES), DoubleToStr (dopen, idigits), DoubleToStr (dhigh, idigits), DoubleToStr (dlow, idigits), DoubleToStr (dclose, idigits), dvolume) Int UpdateHistoryFile (int startpos, bool init false) statisch int lastfpos, csvfpos int i, ps if (FileHandle lt 0) return (-1) normalize open time ps NewPeriod 60 itime (Timestartpos-ShiftBaseShiftTiming) ps itime itimeps ShiftBaseShiftTiming if (init) (FileHandle gt 0) lastfpos FileTell (FileHandle) if (CSVHandle gt 0) csvfpos FileTell (CSVHandle) sonst i startpos if (FileHandle gt 0) (ft1) Häufig gestellte Fragen (')' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ' FileSeek (fileHandle, lastfpos, SEEK SET) if (CSVHandle gt 0) FileSeek (CSVHandle, csvfpos, SEEKSET) if (i lt 0) return (-1) int cnt 0 int LastBarTime Verarbeitungsbalken während (i gt 0) LastBarTime Timei a Neuer Balken, wenn (LastBarTime gt itimeps) die Bardaten schreiben writeHistoryData () cnt itime (LastBarTime-ShiftBaseShiftTiming) ps itime itimeps ShiftBaseShiftTiming dopen Openi dlow Lowi dhigh Highi dclose Closei dvolume Volumei sonst kein neues bar dvolume Volumei if (Lowiltdlow) dlow Lowi if ( Highigtdhigh) dhigh Highi dclose Closei i-- Aufzeichnung lastfpos vor dem Schreiben der letzten Bar. If (FileHandle gt 0) lastfpos FileTell (FileHandle) if (CSVHandle gt 0) csvfpos FileTell (CSVHandle) WriteHistoryData () cnt dvolume - Volume0 bündig das Datenschreiben if (FileHandle gt 0) FileFlush (FileHandle) if (CSVHandle gt 0) FileFlush (CSVHandle) return (cnt) int UpdateChartWindow () statisch int hwnd 0 if (FileHandle lt 0) keine HST Datei geöffnet, keine Notwendigkeit Aktualisierung. Rückkehr (-1) if (hwnd 0) versucht, das Diagrammfenster für die Aktualisierung von hwnd zu erweitern WindowHandle (MySymbol, NewPeriod) if (hwnd 0) if (IsDllsAllowed () false) DLL-Aufrufe muss erlaubt sein DebugMsg (quotDll Aufrufe müssen erlaubt werden) Return (-1) if (postmessageA (hwnd, WMCOMMAND, CHART CMDUPDATEDATA, 0) 0) PostMessage fehlgeschlagen, Diagrammfenster geschlossen hwnd 0 sonst PostMessage succeed return (0) Fenster nicht gefunden oder PostMessage failed return (-1) int PerfCheck (bool Start) statisch int StartTime 0 statisch int Index 0 if (Start) StartTime GetTickCount () Index 0 return (StartTime) Index int diff GetTickCount () - StartTime Alert (quotTime verwendet quot Index quot: quot diff) StartTime GetTickCount () return (diff ) Statisch int LastStartTime 0 statisch int LastEndTime 0 statisch int LastBarCount 0 void reinit () deinit () init () lastStartTime TimeBars-1 LastEndTime Time0 LastBarCount Bars bool IsDataChanged () statisch int Lastbars 0, LastTime 0, LastVolume 0 static double LastOpen 0, LastClose 0, LastHigh 0, LastLow 0 if (LastVolume Volume0 LastBars Bars LastTime Time0 LastClose Close0 LastHigh High0 LastLow Low0 LastOpen Open0) LastBars Bars LastVolume Volume0 LastTime Time0 LastClose Close0 LastHigh High0 LastLow Low0 LastOpen Open0 Rückkehr (true) Rückkehr (falsch) schnelle Version ohne Float point operation statisch int Lastbars 0, LastTime 0, LastVolume 0 bool ret ret false if (LastVolume Volume0) LastVolume Volume0 ret true Wenn (LastTime Time0) LastTime Time0 ret true Wenn (Lastbars Bars) Lastbars Bars treffe zurückkehren (ret) int CheckNewData () Statische Zeichenfolge LastServer quotquot if (Bars lt 2) die Daten werden noch nicht geladen. DebugMsg (quotData nicht geladen, nur "Bars" Barsquot) return (-1) string serv ServerAddress () if (Serv-Quittung) kein Server noch DebugMsg (;No Server connectedquot) zurück (-1) Server geändert, überprüfen und reinitieren, um falsch zu verhindern Daten beim Ändern des Servers. Wenn (LastServer Serv) DebugMsg (quotServer geändert von "LastServer" auf "quot serv") LastServer serv reinit () return (-1) if (IsDataChanged ()) zurück, wenn keine Daten geändert wurden, um Ressource zu speichern DebugMsg (keine Daten geändert) 1) if (TimeBars-1 LastStartTime) DebugMsg (;Start Zeit geändert, neue Historie geladen oder Server geändert)) reinit () return (-1) int i, cnt versuchen, LastEndTime bar zu finden, die Time0 oder Time1 normalerweise sein sollte, also die Der Vorgang ist schnell für (i 0 i lt Stäbe i) wenn (Timei lt LastEndTime) brechen, wenn (i gt Bars Timei LastEndTime) DebugMsg (quotEnd Zeit TimeToStr (LastEndTime) quot not foundquot) reinit () return (-1) cnt Bars - i if (cnt LastBarCount) DebugMsg (quotData geladen, cnt ist quot cnt Last LastBarCount ist lastBarCount) reinit () return (-1) keine neuen Daten geladen, Rückkehr mit LastEndTime Position. LetztzarCount Bars LastEndTime Time0 return (i) if (Enabled) return (0) immer nur nach einem bestimmten Intervall aktualisieren oder aktualisieren, wenn (UpdateInterval 0) int certime certime GetTickCount () if (MathAbs (curtime - lasttime) lt UpdateInterval) return (0) Letztum Curtime if (Debug) PerfCheck (true) int n CheckNewData () if (Debug) PerfCheck (false) if (n lt 0) return (0) Update History Datei mit neuen Daten UpdateHistoryFile (n) Aktualisierungsdiagrammfenster aktualisieren UpdateChartWindow () if (Debug) PerfCheck (false) zurück (0) hey dort. Sehr schön. Ive eine andere idee für sie, die ähnlich wie logarhithmischen trendlines aber vielleicht besser ist. Gann sprach über quadratischen Preis mit der Zeit. Er verwies auf einen König der Normalisierung der Preis-Zeit-Beziehung. Er sprach über eine Preisvibration. Er benutzte Geometrie, aber er hatte nicht die Technologie, die wir heute haben. Lange Geschichte kurz zum Beispiel, wenn Sie messen oder Beispiel gj und es geht im Durchschnitt von 55 Pips pro Stunde seine Preisvibration kann als 5560 gedacht werden. Es gibt ein Renkotime Diagramm Hybrid auf Platz Preis und Zeit, aber es. Ja es ist hilfreich, renkon mit trendlines zu benutzen. Aber das hat nichts mit logarithmischem Maßstab zu tun.
No comments:
Post a Comment