Hilfe bei der Codierung - Seite 538

 

Ich habe auf FF und jetzt auf MQL Forum gepostet, so im versuchen mein Glück hier.

Bevor ich beginne, möchte ich erwähnen, dass ich keineswegs ein Programmierer, kaum ein Skript kiddie bin. Ich habe es geschafft, Echtzeit-Preis in Excel mit Zeitstempel zu speichern. Gibt es eine Möglichkeit, nur zu speichern, wenn der Preis sich bewegt? Denn Excel speichert alle Sekunden, was bedeutet, dass es viele leere Stellen mit Zeitstempel gibt.

Wenn ich schon dabei bin, gibt es auch eine Möglichkeit, so zu kodieren, dass, wenn jede Minute vergeht, es springt auf die nächste Spalte und speichert von dort? Ich verwende xlsapp für den Code. Hier ist der Code:

//+------------------------------------------------------------------+

//| Test1.mq4 |

//| Copyright 2015, MetaQuotes Software Corp. |

// | / |

//+------------------------------------------------------------------+

#property copyright "Copyright 2015, MetaQuotes Software Corp."

#property link "https://www.mql5.com"

#property version "1.00"

#property strict

#include

extern string StartBid= "C3";

extern string StartAsk= "D3";;

extern string StartSpread="F3";

extern string StartTime="A3";

bool xlsgateok=false;

string StrBid;

string StrAsk;

string StrSpread;

string StrTime;

//+------------------------------------------------------------------+

//| Experten-Initialisierungsfunktion |

//+------------------------------------------------------------------+

int OnInit()

{

StrBid=StartBid;

StrAsk=StartAsk;

StrSpread=StartSpread;

StrTime=StartTime;

if (ExcelInit("mt4") && ExcelStart(""))

{

Print("XLSgate init done");

xlsgateok=true;

Print("Office-Version ="+ExcelVersion());

ExcelSheetAdd("MT4");

}

//---

return(INIT_SUCCEEDED);

}

//+------------------------------------------------------------------+

//| Experten-Deinitialisierungsfunktion |

//+------------------------------------------------------------------+

void OnDeinit(const int reason)

{

//---

}

//+------------------------------------------------------------------+

//| Expert tick function |

//+------------------------------------------------------------------+

double lastBid=0;

double lastAsk=0;

int lastSpread=0;

datetime time=0;

void OnTick()

{

//---

if(xlsgateok && lastBid!=Bid)

ExcelSetValue(StrBid,Bid);

lastBid=Bid;

StrBid=ExcelRowAdd(StrBid,1);

if(xlsgateok && lastAsk!=Ask)

ExcelSetValue(StrAsk,Ask);

lastAsk=Ask;

StrAsk=ExcelRowAdd(StrAsk,1);

ExcelSetValue(StrSpread,(Ask-Bid)/Point);

StrSpread=ExcelRowAdd(StrSpread,1);

string s= TimeToStr(TimeCurrent());

ExcelSetString(StrTime,s);

StrZeit=ExcelRowAdd(StrZeit,1);

}

//+------------------------------------------------------------------+

 
mladen:
henrykfx Sie werden niemals gleich sein, nur weil der Indikator, den Sie gepostet haben, neu gemalt wird. Sie können nicht dieselben sein.

Miaden, bitte entweder es repaints oder nicht, nur tun Sie mir einen Gefallen und fügen Sie die Pop-up-Benachrichtigung und Sound-Alarm, und lassen Sie mich zu trauern oder freuen sich über sie; nach all dem einen Mann Gift ist ein anderer Mann das Fleisch, während ein Mann das Fleisch eines anderen Mannes Gift . Wenn Sie anderen mühelos helfen können, sehe ich keinen Grund, warum mein eigener Fall ein Tabu sein sollte. Bitte tun Sie es für mich, auch wenn es Ihr Weihnachtsgeschenk für mich ist, ich werde es sehr zu schätzen wissen. Je mehr Sie verzögern, desto mehr verweigern Sie mir den Handel.

 
henrykfx:
Miaden, bitte, egal ob es sich wiederholt oder nicht, tun Sie mir den Gefallen und fügen Sie die Pop-up-Benachrichtigung und die akustische Warnung hinzu, und lassen Sie mich darüber trauern oder mich freuen; schließlich ist des einen Gift des anderen Fleisch, während des einen Fleisch des anderen Gift ist. Wenn Sie anderen mühelos helfen können, sehe ich keinen Grund, warum mein eigener Fall ein Tabu sein sollte. Bitte tun Sie es für mich, auch wenn es Ihr Weihnachtsgeschenk für mich ist, ich werde es sehr zu schätzen wissen. Je länger Sie zögern, desto mehr verwehren Sie mir den Handel.

Ich kodiere keine Warnungen für REPAINTING-Indikatoren. Schauen Sie sich zum Beispiel diesen Thread an: https: //www.mql5.com/en/forum/180648 und sehen Sie, wie oft ich mich geweigert habe, das zu tun, und wie oft ich gesagt habe, dass die Verwendung von Repainting-Indikatoren im Signalisierungs-/Warnmodus sehr gefährlich ist. Sie sind also keine Ausnahme, aber Ihre Anfrage ist für mich eine Faustregel: Ich möchte mich nicht an etwas beteiligen, das ich als gefährlich für Händler erachte.

Alles Gute

 

Die allerletzte Anfrage!

An alle Programmierer da draußen, aber mit besonderem Dank an mladen. Nicht nur für seine Kodierung, sondern auch für seine Patienten in den vielen, manchmal dummen, Anfragen, die ich im Laufe der Jahre gestellt habe. Danke, fellow....es ist wirklich sehr geschätzt.

Darf ich Sie um eine letzte Sache bitten?

Könnten Sie der LOWER-Alarmlinie des beigefügten "Advanced ADX"-Indikators eine Wellenalarmfunktion hinzufügen?

Der Benutzer kann einen Wav-Sound auswählen?

Funktioniert NUR bei einem steigenden Balken.

Wenn alles gut geht, werde ich mein System, mit dem Ergebnis in naher Zukunft posten.

Dateien:
 
Jeeves:
An alle Programmierer da draußen, aber mit besonderem Dank an mladen. Nicht nur für seine Programmierung, sondern auch für seine Geduld mit den vielen, manchmal dummen, Anfragen, die ich im Laufe der Jahre gestellt habe. Danke fellow....es ist wirklich sehr geschätzt.

Darf ich Sie um eine letzte Sache bitten?

Könnten Sie der LOWER-Alarmlinie des beigefügten "Advanced ADX"-Indikators eine Wellenalarmfunktion hinzufügen?

Der Benutzer kann einen Wav-Sound auswählen?

Die Funktion sollte NUR bei einem steigenden Balken funktionieren.

Wenn alles gut geht, werde ich mein System, mit Ergebnis in naher Zukunft posten.

Jeeves

Wird gemacht

 

Du bist der Mann, mein Freund..... alles, was ich für dich tun kann, schreib mir.

 
mrtools:
Hallo Henrykfx, wie ich bereits sagte, ist der CROSS-Indikator ein EMA-Kreuz-Indikator, wenn Sie auf den Link gehen, den ich zur Verfügung gestellt habe, und diesen Indikator herunterladen und den MaType auf EMA und die schnelle Ma-Periode auf 5 und die langsame Ma-Periode auf 20 einstellen, dann erhalten Sie echte EMA-Kreuz-Werte ohne erneutes Malen der Pfeile auf einem geschlossenen Balken und mit Warnungen.

Ok mrtools, danke für Ihr Interesse an meiner Notlage. Jetzt habe ich, was ich wollte, aber das Problem mit ist, dass es klingt Alarm und Pop-up für die nächste bar. können Sie mir helfen, den Fehler zu beheben. so dass die Alarme und Pop-up-Benachrichtigung werden, wenn und wo es ein Signal von BUY OR SELL.Thanks für Ihre Zeit.

Dateien:
 
mladen:
Ich kodiere keine Alarme für REPAINTING-Indikatoren. Schauen Sie sich zum Beispiel diesen Thread an: https: //www.mql5.com/en/forum/180648 und sehen Sie, wie oft ich mich geweigert habe, das zu tun, und wie oft ich gesagt habe, dass die Verwendung von Indikatoren im Signalisierungs-/Alarmierungsmodus sehr gefährlich ist. Sie sind also keine Ausnahme, aber Ihre Anfrage ist für mich eine Faustregel: Ich möchte mich nicht an einer Sache beteiligen, die ich als gefährlich für die Händler erachte - alles Gute.

Vielen Dank für Ihre offene Antwort. In meinem unerbittlichen Suche, ich habe eine, die nützlich ist, aber es klingen Alarme und benachrichtigen bei der Eröffnung eines neuen bar. können Sie mir helfen, den Fehler zu beheben, so dass zu alarmieren und zu benachrichtigen, wenn es BUY OR SELL Signal nur. Vielen Dank für Ihre Zeit.

Dateien:
 
henrykfx:
Danke für Ihre offene Antwort. In meiner unablässigen Suche habe ich einen Indikator gefunden, der zwar nützlich ist, aber bei der Eröffnung eines neuen Balkens Alarm schlägt und benachrichtigt. Können Sie mir helfen, den Fehler zu beheben, so dass er nur dann Alarm schlägt und benachrichtigt, wenn ein KAUF- oder VERKAUFSSignal vorliegt. Vielen Dank für Ihre Zeit.

henrykfx

Auch dieser Indikator verwendet zukünftige Werte (Repaints) - er verwendet genau die gleiche Logik wie der vorherige, über den wir gesprochen haben

Alles Gute

 
mladen:
henrykfx

Auch dieser Indikator verwendet zukünftige Werte (Repaints) - er verwendet genau die gleiche Logik wie der vorherige, über den wir gesprochen haben

alles Gute

Mladen, Sie haben neulich gesagt, dass 99% der Indikatoren nicht repaintet werden. Sie schreiben überall "repaint, repaint, repaint".

Grund der Beschwerde: