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.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4862
Beiträge: 42973
Benutzer: 7.164
Aktive Benutzer: 79
Links: 83
Wir begrüßen unseren neuesten Benutzer: Shyam
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 2 Tagen
- Shyam
vor einer Woche
- Nobby2000
vor einer Woche
- Wacked1
vor 3 Wochen
- Util
vor 4 Wochen
- Hardy61

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 26
Gesamt: 26
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 12.07.22
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.178
MA-EA befindet sich auf einem aufstrebenden Ast
Standard include-Datei mit eigenen Berechnungs-Funktionen erstellen

Hallo.


Hab ja für nen Indi 2 eigene Funktionen für Division und Multiplikation von Werten, die kleiner als 1 sind, zusammen gebastelt. Die scheinen soweit auch zu funktionieren.


Um die nicht jedes mal in andere Indis oder EAs eintragen zu müssen, wärs gut, wenn man die in ne include-Datei oder sowas einbaun könnte. So dass man dann im Indi oder so bloß noch oben die include-Datei angeben, und dann an entsprechender Stelle die Funktion aufrufen und mit entsprechenden Variablen füllen muss. Gibts für so eine include-Datei oder was es da Alles gibt, ne gute Anleitung?


Diese Funktionen sollen da drin stehn und von nem EA oder Indi benutzt werden. Vorsicht, könnten vielleicht Fehler drin sein.
Code:
//=============================================================================================================
// O P Z   D I V
//=============================================================================================================

double ODIV(

  double ODIV_ToDiv// Soll dividiert werden
  ,
  double ODIV_Div// Wert, der kleiner als 1.0 ist
  
){
  
  double
  ODIV_DIV_mt
  ,
  ODIV_DivEd
  ,
  ODIV_DivEd_t;
  
  int ODIV_mt;
  

  if( ODIV_Div <= -1.0 || ODIV_Div >= 1.0 )ODIV_DivEd = ODIV_ToDiv / ODIV_Div;


  if( ODIV_Div > -1.0 && ODIV_Div < 1.0 ){
  
    ODIV_mt=0;
    while( ODIV_Div > -1.0 && ODIV_Div < 1.0 ){
  
      ODIV_DIV_mt = ODIV_Div * 10.0;
    
      ODIV_Div = ODIV_DIV_mt;
    
      ODIV_mt++;}
  
  
    ODIV_DivEd = ODIV_ToDiv / ODIV_DIV_mt;


    for( ODIV_mt ; ODIV_mt > 1 ; ODIV_mt-- ){
  
      ODIV_DivEd_t = ODIV_DivEd * 10.0;
    
      ODIV_DivEd = ODIV_DivEd_t;}
  
  }

  return ODIV_DivEd;

}

//=============================================================================================================
// O P Z   M U L
//=============================================================================================================

double OMUL(

  double OMUL_ToMul// Soll multipliziert werden
  ,  
  double OMUL_Mul// Wert, der kleiner als 1.0 ist

){
  
  double
  OMUL_MUL_mt
  ,
  OMUL_MulEd
  ,
  OMUL_MulEd_t;
  
  int OMUL_mt;


  if( OMUL_ToMul <= -1.0 || OMUL_ToMul >= 1.0 || OMUL_Mul <= -1.0 || OMUL_Mul >= 1.0 )OMUL_MulEd = OMUL_ToMul * OMUL_Mul;
  
  
  if( OMUL_ToMul > -1.0 && OMUL_ToMul < 1.0 && OMUL_Mul > -1.0 && OMUL_Mul < 1.0 ){

    OMUL_mt=0;
    while( OMUL_Mul > -1.0 && OMUL_Mul < 1.0 ){
  
      OMUL_MUL_mt = OMUL_Mul * 10.0;
    
      OMUL_Mul = OMUL_MUL_mt;
    
      OMUL_mt++;}
  
  
    OMUL_MulEd = OMUL_ToMul * OMUL_MUL_mt;


    for( OMUL_mt ; OMUL_mt > 1 ; OMUL_mt-- ){
  
      OMUL_MulEd_t = OMUL_MulEd / 10.0;
    
      OMUL_MulEd = OMUL_MulEd_t;}
  
  }

   return OMUL_MulEd;

 }
Angehängte Dateien
Dateityp: mq4 PRdMA_OPZ_SEP_v2.mq4 (19,2 KB, 0x aufgerufen)
Mit Zitat antworten
  #2 (permalink)  
Alt 13.07.22
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 584
AVT befindet sich auf einem aufstrebenden Ast
Standard

Genrell kannst Du alles bis auf die Grundfunktionen in eine Datei schreiben, diese dann als .mqh speichern und dann mit include einbinden. Ich habe z.B. alle Benutzereingaben extra in einer Include-Datei, weil sie einfach zu lang sind und sie so einfacher zu übersehen und/oder zu ändern sind.
Du mußt nur darauf achten, daß sie vor der ersten Benutzung steht.
AVT
Mit Zitat antworten
Antwort

Lesezeichen

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 06:27 Uhr.





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