[Archiv!] Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Könnte nirgendwo ohne dich hingehen - 2. - Seite 107
Gibt es einen Indikator für die Unterstützungs- und Widerstandsniveaus auf dieser Seite für den Handelstag, der nicht neu gezeichnet werden konnte. Es war auch möglich zu wählen, für welche Kerzen sie neu gezeichnet werden sollte (täglich, monatlich, wöchentlich). Wenn ich diesen Indikator als Grundlage für meine eigenen Schätzungen verwenden wollte, müsste ich sie nicht allzu genau betrachten, aber ich würde erwarten, dass ich ein gutes Ergebnis erhalte.
Wenn es Ihnen nichts ausmacht, können Sie das näher erläutern?
Suchen Sie in einem Lehrbuch oder in der Dokumentation nach "Arbeiten mit Aufträgen". Verwenden Sie die Auftragssuchfunktion, um einen Auftrag nach Ihren Parametern zu finden, und ändern Sie ihn mit der Auftragsänderungsfunktion.
Bitte helfen Sie mir, einen Fehler im Skript zu finden.
Die Essenz des Problems ist es, 4 Dateien mit den Werten zu haben, die benötigt werden, um jede Datei zu öffnen, alles in ein Array zu schreiben und die durchschnittlichen Maximal- und Minimalwerte zu berechnen und sie dann an ein anderes Array zu übergeben.
Der Fehler ist folgender: Wenn ich GetFileData();, ArrInsertInt(InsertArr, MathAbs(StrToInteger(value)); aufrufe, beginnt es, Werte hinzuzufügen und sie nicht wieder zu schreiben.
string FNLenUp;//имя файла для записи\чтения длин восходящего движенияstring FNSpeedUp;//имя файла для записи\чтения скорости восходящего движенияstring FNLenDown;//имя файла для записи\чтения длин восходящего движенияstring FNSpeedDown;//имя файла для записи\чтения скорости восходящего движения //----------------------------------------------------------------------------------------------------------//int SpeedArrUp[];//массив времени фиксации цен восходящегоint LengthArrUp[];//массив цен восходящегоint SpeedArrDown[];//массив времени фиксации цен нисходящегоint LengthArrDown[];//массив цен нисходящегоexterndouble percent = 0.005;//пунктыint init()
{
GetNameF();
GetFileData(FNLenUp,LengthArrUp);
GetFileData(FNSpeedUp,SpeedArrUp);
GetFileData(FNLenDown,LengthArrDown);
GetFileData(FNSpeedDown,SpeedArrDown);
}
int GetFileData (string FileName, int& RetArr[])
{
int Handle = 0;//файловый указательint i = 0;
int F_newFile = -1;//Флаг создания нового файла (1)-да (0)-нетint InsertArr[];//Массив для извлечения в него данных из файлаint ArrSize = -1;//Размер массиваint ArrMax = -1;//Максимальное значениеint ArrMin = -1;//Минимальное значениеint ArrAverage = -1;//Среднее значениеstring value = 0;
//---------------------------------------------------------------------////Print(ArrSize);//Смотрим существует ли файл//И меняем флаг что файл не создавался
F_newFile = 0;
//значит открываем его для чтения
Handle=FileOpen("lengthEURUSD0.0050Down.csv", FILE_READ);
if(Handle<1)
{
Print("Ошибка открытия файла для чтения.");
return(0);
}
FileSeek(Handle, 0, SEEK_SET);
while(FileIsEnding(Handle)==false)
{
value =FileReadString(Handle);
if(value!="")
{
//Записываем всё в массив из файла
ArrInsertInt(InsertArr, MathAbs(StrToInteger(value)));
}
if(FileIsEnding(Handle)==true)
{
break;
}
}
//Рассчитываем значения средние максимальные и т.д.
ArrSize = ArraySize(InsertArr);
Print(ArrSize);
//---------------------------------------------------------------------//
ArrMax = ArrayMaximum(InsertArr,ArrSize,0);
ArrMax = InsertArr[ArrMax];
//---------------------------------------------------------------------//
ArrMin = ArrayMinimum(InsertArr,ArrSize,0);
ArrMin = InsertArr[ArrMin];
//---------------------------------------------------------------------//
ArrAverage = 0;
for(i = 0; i<=ArrSize; i++)
{
ArrAverage = ArrAverage+InsertArr[i];
}
ArrAverage = ArrAverage/ArrSize;
//---------------------------------------------------------------------// FileClose(Handle);
//---------------------------------------------------------------------////Смотрим если все значения есть, тогда запихиваем всё в массив и передаём егоif(F_newFile != -1 && ArrSize != -1 && ArrMax != -1 && ArrMin != -1 && ArrAverage != -1)
{
ArrInsertInt(RetArr,F_newFile);
ArrInsertInt(RetArr,ArrSize);
ArrInsertInt(RetArr,ArrMax);
ArrInsertInt(RetArr,ArrMin);
ArrInsertInt(RetArr,ArrAverage);
ArrInsertInt(RetArr,Handle);
Print(RetArr[0],"|",RetArr[1],"|",RetArr[2],"|",RetArr[3],"|",RetArr[4],"|",RetArr[5]);
return (RetArr);
}
//---------------------------------------------------------------------////иначе передаем только файловый указатель
ArrInsertInt(RetArr,Handle);
ArrInsertInt(RetArr,F_newFile);
return (RetArr);
}
void GetNameF()
{string symbol;//инструмент которым будем торговать//создаём имя файла
symbol = Symbol();
//---------------------------------------------------------------------------------------------------------------------------//
FNLenUp = "length"+symbol+DoubleToStr(percent,4)+"up";
//--------------------------------------------------------//
FNSpeedUp = "speed"+symbol+DoubleToStr(percent,4)+"up";
//--------------------------------------------------------//
FNLenDown = "length"+symbol+DoubleToStr(percent,4)+"Down";
//--------------------------------------------------------//
FNSpeedDown = "speed"+symbol+DoubleToStr(percent,4)+"Down";
}
int ArrInsertInt(int& m[], int e, int p=-1) {
int j, k=ArraySize(m);
p=-1;
ArrayResize(m, k+1);
if (p>=0 && p<k) {
for (j=k; j>p; j--) m[j]=m[j-1];
m[p]=e;
} else m[k]=e;
return(k+1);
}
Bitte helfen Sie mir, einen Fehler im Skript zu finden.
Die Essenz des Problems ist es, 4 Dateien mit den Werten zu haben, die benötigt werden, um jede Datei zu öffnen, alles in ein Array zu schreiben und die durchschnittlichen Maximal- und Minimalwerte zu berechnen und sie dann an ein anderes Array zu übergeben.
Der Fehler ist folgender: Wenn ich GetFileData();, ArrInsertInt(InsertArr, MathAbs(StrToInteger(value)); aufrufe, beginnt es, Werte hinzuzufügen und sie nicht wieder zu schreiben.
Hier ist das Skript und eine der Dateien
Die Datei ist aus irgendeinem Grund nicht angehängt. Hier ist der Inhalt:
Ich versuche, die SAR-Parabel, die aktuelle und die vorherige zu vergleichen. Aber es funktioniert nicht, ich kämpfe schon seit einem Tag damit. Warum funktioniert dieser Code nicht? Hier ist der Skriptcode:
int start()
{
double sar0 = iSAR(Symbol(), 0, 0.02, 0.2, 0);
double sar2 = iSAR(Symbol(), 0, 0.02, 0.2, 1);
sar0 = sar2;
if (sar0 == sar2) //если написать sar0 = sar2,Alert("SAR проверяется"); //то работает, как в коде нижеreturn;
}
Pupersa, найди этот ордер и измени в нём параметр "стоплосс", ничё сложного.
Wenn es Ihnen nichts ausmacht, können Sie das näher erläutern?
Ich gebe dir die Nuss und du sagst mir, warum das Auto nicht anspringt... :)
Mit der richtigen Nuss können Sie mir sagen... :-)
Im Anhang finden Sie die Datei... Vielen Dank im Voraus!
Wenn es Ihnen nichts ausmacht, können Sie das näher erläutern?
Bitte helfen Sie mir, einen Fehler im Skript zu finden.
Die Essenz des Problems ist es, 4 Dateien mit den Werten zu haben, die benötigt werden, um jede Datei zu öffnen, alles in ein Array zu schreiben und die durchschnittlichen Maximal- und Minimalwerte zu berechnen und sie dann an ein anderes Array zu übergeben.
Der Fehler ist folgender: Wenn ich GetFileData();, ArrInsertInt(InsertArr, MathAbs(StrToInteger(value)); aufrufe, beginnt es, Werte hinzuzufügen und sie nicht wieder zu schreiben.
Hier ist das Skript und eine der Dateien
Bitte helfen Sie mir, einen Fehler im Skript zu finden.
Die Essenz des Problems ist es, 4 Dateien mit den Werten zu haben, die benötigt werden, um jede Datei zu öffnen, alles in ein Array zu schreiben und die durchschnittlichen Maximal- und Minimalwerte zu berechnen und sie dann an ein anderes Array zu übergeben.
Der Fehler ist folgender: Wenn ich GetFileData();, ArrInsertInt(InsertArr, MathAbs(StrToInteger(value)); aufrufe, beginnt es, Werte hinzuzufügen und sie nicht wieder zu schreiben.
Hier ist das Skript und eine der Dateien
Die Datei ist aus irgendeinem Grund nicht angehängt. Hier ist der Inhalt:
121
58
91
176
87
58
105
166
95
54
59
99
54
172
79
55
69
110
97
80
119
113
124
68
80
79
51
84
58
112
51
181
Ich versuche, die SAR-Parabel, die aktuelle und die vorherige zu vergleichen. Aber es funktioniert nicht, ich kämpfe schon seit einem Tag damit. Warum funktioniert dieser Code nicht? Hier ist der Skriptcode:
Diese Variante funktioniert: