Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4
Startseite Registrieren Hilfe Community Kalender Heutige Beiträge Suchen

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4978
Beiträge: 43260
Benutzer: 7.224
Aktive Benutzer: 74
Links: 84
Wir begrüßen unseren neuesten Benutzer: Sundaytrader
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 4 Stunden
- Sundaytrad...
vor 11 Stunden
- TS_6
vor 2 Tagen
- Mane
vor 2 Wochen
- AlbertZiz
vor 2 Wochen
- michak

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

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 14.05.19
Mitglied
 
Registriert seit: Dec 2017
Ort: 76891
Beiträge: 126
Angel befindet sich auf einem aufstrebenden Ast
Standard (Globale) Variable "resetten" ?

Hallo,
ich habe da ein (Verständnis)-Problem, wobei ihr mir hoffentlich helfen könnt!
Wenn ich den Code im MetaEditor kompiliere, so ist doch der "alte" Code nicht mehr existent, sondern nur der "neue", kompilierte.
Nun habe ich folgendes Programm:
Code:
#property copyright "Copyright 2019, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict

input int Abstand_in_Pipetten=10;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
Comment(" Abstand_in_Pipetten=  ",Abstand_in_Pipetten,"       EMA= ",NormalizeDouble(iMA(Symbol(),1,5,0,1,0,0),5));
  }
Dieser Mini-EA ist im MT4 aktiv und der Wert "Abstand_in_Pipetten" wird mit "10" im Bildschirm angezeigt. (Nebenbei: Kann man die Schriftgröße / Farbe der Comment-Funktion eigentlich ändern?)
Der Wert einer EMA (Willkürlich mal die 1er mit Periode 5) wird in der selben Comment-Zeile ebenfalls angezeigt und verändert sich mit jedem Tick.

Ändere ich die "10" im Code auf einen anderen Wert, z.B. "5" und drücke auf "Kompilieren", so ändert sich der auf dem Bildschirm angezeigte Wert NICHT. Die EMA ändert sich dennoch munter weiter.
Erst, wenn ich einen anderen Timeframe anklicke als den aktuellen, so wird der Wert "Abstand_in_Pipetten" auf den im Code eingestellten Wert verändert.

Wenn ich jedoch im Fenster des MT4 "Rechte Maustaste/Experten/Eigenschaften/Eingaben" den Wert "Abstand_in_Pipetten" verändere, so wird dieser veränderte Wert nach Drücken von "Ok" sofort angezeigt.

Nun, wie kann man denn den Wert "Abstand_in_Pipetten" im laufenden Betrieb des EA ändern? Ich denke daran, wenn ich den EA auf einem VPS laufen lasse und eine Einstellung ändere, so wird diese dann ja auch nicht einfach übernommen, ohne dass ich den aktuellen Timeframe wechsele und ggf. wieder zurückschalte?
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang
  #2 (permalink)  
Alt 15.05.19
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Angel Beitrag anzeigen
(Nebenbei: Kann man die Schriftgröße / Farbe der Comment-Funktion eigentlich ändern?)
Ich habe noch keine Möglichkeit gefunden

Ok, aus folgenden Gründen findet ein DeInit und damit ein Neustart und Neueinlesen des ganzen Codes statt:
1. ändern des Symbols oder Timeframes (Dein Zeitwechsel)
2. ändern einer Benutzerangabe (Dein Rechtsklick ...)
3. entfernen vom Chart
Das Neukompilieren stoppt also den EA nicht und lädt ihn somit auch nicht neu.

Zitat:
Zitat von Angel Beitrag anzeigen
Nun, wie kann man denn den Wert "Abstand_in_Pipetten" im laufenden Betrieb des EA ändern? Ich denke daran, wenn ich den EA auf einem VPS laufen lasse und eine Einstellung ändere, so wird diese dann ja auch nicht einfach übernommen, ohne dass ich den aktuellen Timeframe wechsele und ggf. wieder zurückschalte?
Wie willst Du den Wert denn anders ändern als durch eine Benutzereingabe? Du hast es doch extra so geschrieben, daß der Benutzer beim Start des EA die Pipettenzahl angeben muß. AVT
  #3 (permalink)  
Alt 18.05.19
Mitglied
 
Registriert seit: Dec 2017
Ort: 76891
Beiträge: 126
Angel befindet sich auf einem aufstrebenden Ast
Standard

Ok, Danke, war nur mal so eine Überlegung von mir. Das hilft mir jedenfalls schonmal weiter...!
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang
Thema geschlossen

Lesezeichen


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 23:08 Uhr.





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