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: 4978
Beiträge: 43260
Benutzer: 7.222
Aktive Benutzer: 72
Links: 84
Wir begrüßen unseren neuesten Benutzer: Mane
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor einem Tag
- Mane
vor 2 Wochen
- AlbertZiz
vor 2 Wochen
- michak
vor 2 Wochen
- Amateur
vor 2 Wochen
- infos1982

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

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 13.09.20
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 63
Hippo25 befindet sich auf einem aufstrebenden Ast
Standard Sting Variable inhalt als name für double Variable

Hallo leute

Ich schreibe nur kleine Skrips für mich selbst. Habe nun ein kleines Problem. In einer Sting Variable speicher ich den Namen einer double Variable. Die soll dann in einer if anweisung genutzt werden.

Geht das überhaupt?

string Freiwert;

if ( Freiwert == x) { In Freiwert gespeichert double Variable = Y}

Vielleich kann mir hier jemand helfen
gruss
Hippo
  #2 (permalink)  
Alt 13.09.20
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.735
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Hippo25 Beitrag anzeigen
Hallo leute

Ich schreibe nur kleine Skrips für mich selbst. Habe nun ein kleines Problem. In einer Sting Variable speicher ich den Namen einer double Variable. Die soll dann in einer if anweisung genutzt werden.

Geht das überhaupt?

string Freiwert;

if ( Freiwert == x) { In Freiwert gespeichert double Variable = Y}

Vielleich kann mir hier jemand helfen
gruss
Hippo
Das geht, wenn vorher der Variablen Freiwert auch ein Wert zugeordnet wurde und wenn x auch ein String ist.

Man kann aber keinen Leerstring mit x vergleichen, da x sicherlich einen Wert besitzt. Sollte allerdings x dann auch ein Leerstring sein, dann wäre der Vergleich immer true. Aber ergibt das irgendeinen Sinn?

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #3 (permalink)  
Alt 13.09.20
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 63
Hippo25 befindet sich auf einem aufstrebenden Ast
Standard

Freiwert wird im vorfeld zugewiesen. In dem fall b1-b10 .
In diesem Wert (Freiwert ( b1- b10 )) soll dann der aktuelle Ask wert gespeichert werden.
wenn ich jetzt

"Freiwert = Ask;" mache habe ich den b Wert überschreiben mit Ask.
Wie mache ich das, das der Inhalt von freiwert benutzt wird.

Freiwert "B2" =Ask;
und schon steht in B2 das aktuelle Ask.

ich hoffe ich habe das richtig beschrieben.



hippo

Geändert von Hippo25 (13.09.20 um 21:38 Uhr)
  #4 (permalink)  
Alt 13.09.20
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.735
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Hippo25 Beitrag anzeigen
Freiwert wird im vorfeld zugewiesen. In dem fall b1-b10 .
In diesem Wert (Freiwert ( b1- b10 )) soll dann der aktuelle Ask wert gespeichert werden.
wenn ich jetzt

"Freiwert = Ask;" mache habe ich den b Wert überschreiben mit Ask.
Wie mache ich das, das der Inhalt von freiwert benutzt wird.

Freiwert "B2" =Ask;
und schon steht in B2 das aktuelle Ask.

ich hoffe ich habe das richtig beschrieben.

hippo
Sorry, dem kann ich nicht ganz folgen.
Also die Variable Freiwert bistzt anfangs den Stringwert "b1-b10"??
In diesem Wert kann kein Wert gespeichert werden, weil der Wert "b1-b10" ein ein ist und zwar der der variablen Freiwert.
Wenn die Variable Freiwert den Wert Ask bekommen soll, dann lautet das einfach:

Freiwert = (string)Ask;
oder
Freiwert = DoubleToStr(Ask);

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #5 (permalink)  
Alt 13.09.20
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 63
Hippo25 befindet sich auf einem aufstrebenden Ast
Standard

In Freiwert wird entweder b1 oder b2 oder b3 oder b4 oder b5 usw
Also der wert der Variable, die später genutzt werden soll.

und wenn zb. b2 drin steht soll dann da ask eingetragen werden



Freiwert "B2" =Ask;
und schon steht in B2 das aktuelle Ask.
  #6 (permalink)  
Alt 13.09.20
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 Hippo25 Beitrag anzeigen
In Freiwert wird entweder b1 oder b2 oder b3 oder b4 oder b5 usw
Also der wert der Variable, die später genutzt werden soll.
und wenn zb. b2 drin steht soll dann da ask eingetragen werden
Freiwert "B2" =Ask;
und schon steht in B2 das aktuelle Ask.
Also ich werde aus Deiner ganzen Beschreibung nicht schlau, was Du überhaupt willst. Schreibe doch einfach mal den Code, dann werden wir glaube ich besser helfen können. AVT
  #7 (permalink)  
Alt 13.09.20
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.735
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Hippo25 Beitrag anzeigen
In Freiwert wird entweder b1 oder b2 oder b3 oder b4 oder b5 usw
Also der wert der Variable, die später genutzt werden soll.

und wenn zb. b2 drin steht soll dann da ask eingetragen werden



Freiwert "B2" =Ask;
und schon steht in B2 das aktuelle Ask.
Ja dann sollte da stehen:

Code:
if (Freiwert == "b2") Freiwert = DoubleToStr(Ask);
traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #8 (permalink)  
Alt 14.09.20
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 63
Hippo25 befindet sich auf einem aufstrebenden Ast
Standard

Ich habs halt so gelöst. ist nicht schön aber funktioniert

if (Freiwert == "b1") {b1 = Ask;}
if (Freiwert == "b2") {b2 = Ask;}
if (Freiwert == "b3") {b3 = Ask;}
if (Freiwert == "b4") {b4 = Ask;}
if (Freiwert == "b5") {b5 = Ask;}
if (Freiwert == "b6") {b6 = Ask;}
if (Freiwert == "b7") {b7 = Ask;}
if (Freiwert == "b8") {b8 = Ask;}
if (Freiwert == "b9") {b9 = Ask;}
if (Freiwert == "b10") {b10 = Ask;}

Hatte gehofft das es kürzer geht. Vielen dank für die hilfe.
Hippo
  #9 (permalink)  
Alt 14.09.20
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 Hippo25 Beitrag anzeigen
Ich habs halt so gelöst. ist nicht schön aber funktioniert
if (Freiwert == "b1") {b1 = Ask;}
if (Freiwert == "b2") {b2 = Ask;}
if (Freiwert == "b3") {b3 = Ask;}
if (Freiwert == "b4") {b4 = Ask;}
if (Freiwert == "b5") {b5 = Ask;}
if (Freiwert == "b6") {b6 = Ask;}
if (Freiwert == "b7") {b7 = Ask;}
if (Freiwert == "b8") {b8 = Ask;}
if (Freiwert == "b9") {b9 = Ask;}
if (Freiwert == "b10") {b10 = Ask;}
Hatte gehofft das es kürzer geht.
Also wenn Du willst, daß die Variablen b1 bis b10 jeweils den Ask-Preis bekommen, versuche mal das:
Code:
string FreiwertName[10]={"b1","b2","b3","b4","b5","b6","b7","b8","b9","b10"}; //NamenDerVariablen
double FreiwertWert[10];                                                      //DazugehörigerWert
// ============================================================================
void OnStart() 
{ 
    for(int i=0; i<ArrayRange(FreiwertName,0); i++) //ArraysBeginnenBeiNull
    {
       if(FreiwertWert[i]!=Ask)             //VariableHatNichtDenAskPreis
         FreiwertWert[i]=Ask;               //DannZuweisen
       Print(" 0. i=",IntegerToString(i),
             " 1. FreiwertName=",FreiwertName[i],
             " 2. Wert=",DoubleToStr(FreiwertWert[i],_Digits)
            );
    }
}
Ist es das, was Du willst? AVT
  #10 (permalink)  
Alt 14.09.20
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.735
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Hippo25 Beitrag anzeigen
Ich habs halt so gelöst. ist nicht schön aber funktioniert

if (Freiwert == "b1") {b1 = Ask;}
if (Freiwert == "b2") {b2 = Ask;}
if (Freiwert == "b3") {b3 = Ask;}
if (Freiwert == "b4") {b4 = Ask;}
if (Freiwert == "b5") {b5 = Ask;}
if (Freiwert == "b6") {b6 = Ask;}
if (Freiwert == "b7") {b7 = Ask;}
if (Freiwert == "b8") {b8 = Ask;}
if (Freiwert == "b9") {b9 = Ask;}
if (Freiwert == "b10") {b10 = Ask;}

Hatte gehofft das es kürzer geht. Vielen dank für die hilfe.
Hippo
Mir ist zwar die Sinnhaftigkeit noch nicht ganz klar, aber wenn Du denkst, dass dann nach Übergabe des Ask-Kurses die Variable Freiwert den Wert des Ask-Kurses beinhaltet, liegst Du komplett falsch, denn die Variable Freiwert und die Variablen b1 bis b10 haben mit Freiwert überhaupt nichts zu tun.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
Thema geschlossen

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 02:37 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.
-----------------------------------------------------------------------------------------------------------------------------