Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.


Portalsuche


Werbung

Login
Benutzername:
Kennwort:


Statistik
Themen: 3655
Beiträge: 36001
Benutzer: 5.792
Aktive Benutzer: 593
Links: 80
Wir begrüßen unseren neuesten Benutzer: Thorsten3000
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor 3 Stunden
- Thorsten30...
vor 4 Tagen
- DayTrader2...
vor 4 Tagen
- erfolgreic...
vor 5 Tagen
- ehonk
vor 5 Tagen
- nagateru

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 99
Gesamt: 100
Team: 0
Team:  
Benutzer:  next user
Freunde anzeigen

Empfehlungen

Werbung

Like Tree20Likes
Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #101 (permalink)  
Alt 15.12.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Code:
//CCI
{
double CCI = iCCI(_Symbol,_Period, InpCCIPeriod, CCI_Price, 1);
double IL1 = iCCI(_Symbol,_Period, indicator_level1, CCI_Price, 1);//-100
double IL2 = iCCI(_Symbol,_Period, indicator_level2, CCI_Price, 1);//+100
}
Hättet Ihr einfach geschrieben "Z. 2 & 3 können komplett weg" statt "sind (immer noch) falsch" wärn wir vermutlich schon viel weiter.

Was solls, bin jetzt beim RVI. Also beantwortet mir bitte einfach nur eine simple Frage: Er besteht aus einer Globalen Variable (wenn ich mich nicht täusche) und 2 Linien (eher Kurven, wie MAs ), die jeweils mit Formeln berechnet werden. Müssen die am Ende ihrer Zeilen mit "mode" deklariert werden? Denke mal ja.
Mit Zitat antworten
  #102 (permalink)  
Alt 15.12.16
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 1.758
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
Code:
//CCI
{
double CCI = iCCI(_Symbol,_Period, InpCCIPeriod, CCI_Price, 1);
double IL1 = iCCI(_Symbol,_Period, indicator_level1, CCI_Price, 1);//-100
double IL2 = iCCI(_Symbol,_Period, indicator_level2, CCI_Price, 1);//+100
}
Hättet Ihr einfach geschrieben "Z. 2 & 3 können komplett weg" statt "sind (immer noch) falsch" wärn wir vermutlich schon viel weiter.

Was solls, bin jetzt beim RVI. Also beantwortet mir bitte einfach nur eine simple Frage: Er besteht aus einer Globalen Variable (wenn ich mich nicht täusche) und 2 Linien (eher Kurven, wie MAs ), die jeweils mit Formeln berechnet werden. Müssen die am Ende ihrer Zeilen mit "mode" deklariert werden? Denke mal ja.
Du bist echt mutig, so einen Satz hier zu schreiben. Wir haben es Dir mehrmals geschrieben, incl. der Lösung in Post #74. Lesen und verstehen musst Du aber alleine.

zum RVI:
So, jetzt wird nicht vorgekaut. Was sagt denn die MQL-Doku?
Kopiere mal die Funktionsdeklaration hier rein und erläutere, was Du da für Parameter erkennst.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
Mit Zitat antworten
  #103 (permalink)  
Alt 16.12.16
Benutzerbild von Kronenchakra
Mitglied
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 265
Kronenchakra befindet sich auf einem aufstrebenden Ast
Thumbs up

Ich beobachte grinsend diesen Fred
So eine Unterhaltung erlebt man normalerweise nur im Kabarett
Bitte weiter so, ich will mehr!
__________________
Das Gras wächst nicht schneller wenn man daran zieht
Mit Zitat antworten
  #104 (permalink)  
Alt 16.12.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Ist irgendwie der einzige Para, den man im MT4 einstellen kann, Herr Doctor:
Code:
extern int ExtRVIPeriod=10;
Mit Zitat antworten
  #105 (permalink)  
Alt 16.12.16
Benutzerbild von Kronenchakra
Mitglied
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 265
Kronenchakra befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
Ist irgendwie der einzige Para, den man im MT4 einstellen kann, Herr Doctor:
Code:
extern int ExtRVIPeriod=10;
Hilfe, ich kann nicht mehr, hab schon Muskelkater vom Lachen

@MA-EA: Du bestimmst doch selbst was man eingeben und einstellen kann.
Lass es bleiben, denk dir eine Strategie aus, und gib's dem Doc zum proggen.
Crashbulle likes this.
__________________
Das Gras wächst nicht schneller wenn man daran zieht
Mit Zitat antworten
  #106 (permalink)  
Alt 16.12.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Es ging jetzt nur um den RVI.
Mit Zitat antworten
  #107 (permalink)  
Alt 18.12.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Ist es denn echt zu viel, mir einfach zu sagen, wies richtig wäre?
Code:
double RVI = iRVI(_Symbol,_Period, ExtRVIPeriod, MODE_ExtRVIBuffer, 1);
double RVI_S = iRVI(_Symbol,_Period, ExtRVIPeriod, MODE_ExtRVISignalBuffer, 1);
Code:
//---- indicator settings
#property  indicator_separate_window
#property  indicator_buffers 2
#property  indicator_color1  Green
#property  indicator_color2  Red
//---- indicator parameters
extern int ExtRVIPeriod=10;
//---- indicator buffers
double     ExtRVIBuffer[];
double     ExtRVISignalBuffer[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicator buffers mapping
   SetIndexBuffer(0,ExtRVIBuffer);
   SetIndexBuffer(1,ExtRVISignalBuffer);
//---- indicator line
   SetIndexStyle(0,DRAW_LINE);
   SetIndexStyle(1,DRAW_LINE);
//---- drawing settings   
   SetIndexDrawBegin(0,ExtRVIPeriod+3);   
   SetIndexDrawBegin(1,ExtRVIPeriod+7);     
//---- name for DataWindow and indicator subwindow label
   IndicatorShortName("RVI("+ExtRVIPeriod+")");
   SetIndexLabel(0,"RVI");
   SetIndexLabel(1,"RVIS");
//---- initialization done
   return(0);
  }
//+------------------------------------------------------------------+
//| Relativ Vigor Index                                              |
//+------------------------------------------------------------------+
int start()
  {
   int i,j,nLimit,nCountedBars;
   double dValueUp,dValueDown,dNum,dDeNum;
//----
   if(Bars<=ExtRVIPeriod+8) return(0);
//----
   nCountedBars=IndicatorCounted();
//---- check for possible errors
   if(nCountedBars<0) return(-1);
//---- last counted bar will be recounted
   nLimit=Bars-ExtRVIPeriod-4;
   if(nCountedBars>ExtRVIPeriod+4)
      nLimit=Bars-nCountedBars;
//--------------------------------------------------------------------------------------------------------------

//---- RVI counted in the 1-st buffer
   for(i=0; i<=nLimit; i++)
     {
      dNum=0.0;
      dDeNum=0.0;
      for(j=i; j<i+ExtRVIPeriod; j++)
        {
         dValueUp=((Close[j]-Open[j])+2*(Close[j+1]-Open[j+1])+2*(Close[j+2]-Open[j+2])+(Close[j+3]-Open[j+3]))/6;
         dValueDown=((High[j]-Low[j])+2*(High[j+1]-Low[j+1])+2*(High[j+2]-Low[j+2])+(High[j+3]-Low[j+3]))/6;
         dNum+=dValueUp;
         dDeNum+=dValueDown;
        }
      if(dDeNum!=0.0)
         ExtRVIBuffer[i]=dNum/dDeNum;
      else
         ExtRVIBuffer[i]=dNum;
     }
//--------------------------------------------------------------------------------------------------------------

//---- signal line counted in the 2-nd buffer
   nLimit=Bars-ExtRVIPeriod-7;
   if(nCountedBars>ExtRVIPeriod+8)
      nLimit=Bars-nCountedBars+1;
   for(i=0; i<=nLimit; i++)
      ExtRVISignalBuffer[i]=(ExtRVIBuffer[i]+2*ExtRVIBuffer[i+1]+2*ExtRVIBuffer[i+2]+ExtRVIBuffer[i+3])/6;
//----
   return(0);
  }
Mit Zitat antworten
  #108 (permalink)  
Alt 18.12.16
Benutzerbild von Kronenchakra
Mitglied
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 265
Kronenchakra befindet sich auf einem aufstrebenden Ast
Standard

Warum quälst du dich damit herum?
Gibt doch ein FixFertiges Beispiel hier https://www.mql5.com/de/code/8035

Nächtliche Grüße

Otto

PS: Die ganze Programmiererei besteht doch haupsächlich aus der Verwendung von vorhandenem Code.
Mit der Zeit wächst die Erfahrung und das Wissen -> Das Gras ......
__________________
Das Gras wächst nicht schneller wenn man daran zieht

Geändert von Kronenchakra (18.12.16 um 02:23 Uhr) Grund: PS
Mit Zitat antworten
  #109 (permalink)  
Alt 18.12.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Das ist nur der Indi. Den hab ich schon weiß ich wie lange auf der Platte. Soll ich zu dem sagen "Komm bitte in meinen EA"?

Muss man vielleicht in der Deklaration die einzelnen Zahlenwerte, also "0,0,60,..." statt "_Symbol, _Period,..." eintragen?
Mit Zitat antworten
  #110 (permalink)  
Alt 18.12.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Edit:So geht das wohl.
https://docs.mql4.com/constants/indi...onstants/lines
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
ea programmieren, expert advisor programmieren, mql4, programmierung, programmierung metatrader, valerius, valerius ea, valerius expert advisor


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 14:08 Uhr.



-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2017 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2017 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------