void AAA()
{
int Handle; // Файловый описательstring File_Name = "AAA.csv"; // Имя открываемого файлаstring str_1 = ""; // 1 Номер индекса по первому измерениюstring str_2 = ""; // 2 Номер индекса по второму измерениюstring str_3 = ""; // 3 Значениеstring str_4 = ""; // 4 Значениеstring str_5 = ""; // 5 Значение
Handle=FileOpen(File_Name, FILE_READ, ";"); // Открытие файлаwhile(FileIsEnding(Handle)==false) // До тех пор, пока файловый...
{ // ...указатель не в конце файла// Чтение данных из строки до файлового разделителя
str_1 = FileReadString(Handle); // 1 Номер индекса по первому измерению
str_2 = FileReadString(Handle); // 2 Номер индекса по второму измерению
str_3 = FileReadString(Handle); // 3 Значение
str_4 = FileReadString(Handle); // 4 Значение
str_5 = FileReadString(Handle); // 5 Значение
// А здесь заполнение массива
arr[str_1][str_2][0] = str_3;
arr[str_1][str_2][1] = str_3;
arr[str_1][str_2][2] = str_4;
if(FileIsEnding(Handle)==true) // Файловый указатель в конце файлаbreak; // Выход из цикла чтения
????????????????????????????????????????????????????
}
FileClose(Handle); // Закрываем файлreturn; // Выход из функции
}
テーブル(*.csv)のデータを3次元の静的配列に展開する方法を教えてください。表の1列目には配列の1次元目のインデックスが格納されています。 2列目には配列の2次元目のインデックスが格納されています。 3列目以降には配列の3次元目の値そのものが格納されています。
次に何を書いたかは忘れてください。グローバル変数 arr[][][3]で適当な型の配列を宣言し、2次元目を自分で定義します。
まあ、こんなもんでしょう。そして、文字列インデックスを整数に変換する必要があるでしょう。
次に何を書いたかは忘れてください。グローバル変数arr[][][3]で適当な型の配列を宣言し、2次元目を自分で定義します。
まあ、こんなもんでしょう。また、文字列のインデックスを整数に変換する必要があるでしょう。
本当にありがとうございました !!!!
くだらないアドバイスは必要ない。このコマンドは、チャートからすべてのオブジェクトを完全に削除します。
納得いかない!
という質問がありました。
OBJ_ARROW_RIGHT_PRICEなどのオブジェクトをすべて 削除するには?
解決策
どこがどうバカな解決策なのか?
私はあなたに同意しない!
という質問がありました。
解決策
そして、なぜその判断が愚かなのか。
この良いコードの作者について、どのように、そして何を語っているのだろうか。
人は優しい。彼らは思ったことを何でも口にする。
人は優しい。思ったことをそのまま口にする。
私はあなたに同意しない!
という質問がありました。
解決策
そして、なぜその解決策が愚かなものなのか。
実際には、ObjectsDeleteAll(0,OBJ_ARROW_RIGHT_PRICE) というコマンドからすべてが始まりました。
で、別のバリエーションでObjectsDeleteAll(OBJ_ARROW_RIGHT_PRICE) を試してみました。
拝啓、ヘルプをお読みください :)
Alpha-Forexでは上記のコマンドを使ったインデックスが正しく動作するのに、Saxo Bankではオブジェクトが削除されなくなったのはなぜでしょうか。
その後、スクリプトの実験を始めたら、すべてのターミナルでオブジェクトが削除されなくなりました。
皆さん、こんにちは。
そんなテスターの異変が観測される。
152、153、158、159の注文を決済した後、利益が正しくありません(テスターの計算が誤っているかのようです)。表のように数ヶ月間、注文が "ぶら下がった "状態になっています。その上、ドローダウンは表には正しく表示されるのですが、なぜかチャートには表示されないのです。
それは何でしょう?
EURUSD (ユーロ vs 米ドル)
15分(M15) 2012.01.01 23:00 - 2014.03.07 22:59 (2012.01.01 - 2014.03.08)
1000.00
スプレッド
現在 (12)
1418.73
利益合計
2045.28
全損
-626.55
3.26
期待されるペイオフ
2.41
419.34
最大ドローダウン
834.91 (58.98%)
相対的ドローダウン
58.98% (834.91)
№
時間
タイプ
ご注文
ボリューム
価格
S / L
T / P
利益
バランス
372
2012.04.30 11:00
買う
151
0.01
1.32193
0.00000
1.32472
373
2012.05.01 04:45
ティーピー
151
0.01
1.3247234
0.00000
1.32472
2.75
1402.41
374
2012.05.01 15:00
買う
152
0.01
1.32262
0.00000
1.32713
375
2012.05.02 07:45
ティーピー
142
0.01
1.31949
0.00000
1.31949
-4.40
1398.00
376
2012.05.02 07:45
ティーピー
143
0.01
1.31949
0.00000
1.31949
0.95
1398.96
377
2012.05.02 07:45
ティーピー
149
0.02
1.31949
0.00000
1.31949
12.49
1411.44
378
2012.05.02 08:45
買う
153
0.01
1.31711
0.00000
1.32237
379
2012.05.02 08:45
モディファイ
152
0.01
1.32262
0.00000
1.32237
380
2012.05.02 15:15
捌く
154
0.01
1.31483
0.00000
1.31352
381
2012.05.03 07:00
ティーピー
154
0.01
1.3135174
0.00000
1.31352
1.18
1412.63
382
2012.05.03 08:45
捌く
155
0.01
1.31454
0.00000
1.31425
383
2012.05.03 09:00
ティーピー
155
0.01
1.3142483
0.00000
1.31425
0.29
1412.92
384
2012.05.03 13:45
捌く
156
0.01
1.31671
0.00000
1.31256
385
2012.05.04 10:45
ティーピー
156
0.01
1.3125581
0.00000
1.31256
4.11
1417.02
386
2012.05.04 14:15
捌く
157
0.01
1.31527
0.00000
1.31293
387
2012.05.04 14:45
ティーピー
157
0.01
1.3129331
0.00000
1.31293
2.34
1419.36
388
2012.05.04 16:15
買う
158
0.02
1.30997
0.00000
1.31742
389
2012.05.04 16:15
モディファイ
152
0.01
1.32262
0.00000
1.31742
390
2012.05.04 16:15
モディファイ
153
0.01
1.31711
0.00000
1.31742
391
2012.05.06 23:15
買う
159
0.04
1.29845
0.00000
1.30918
392
2012.05.06 23:15
モディファイ
152
0.01
1.32262
0.00000
1.30918
393
2012.05.06 23:15
モディファイ
153
0.01
1.31711
0.00000
1.30918
394
2012.05.06 23:15
モディファイ
158
0.02
1.30997
0.00000
1.30918
395
2012.09.14 10:45
ティーピー
152
0.01
1.30918
0.00000
1.30918
-18.67
1400.70
396
2012.09.14 10:45
ティーピー
153
0.01
1.30918
0.00000
1.30918
-13.12
1387.58
397
2012.09.14 10:45
ティーピー
158
0.02
1.30918
0.00000
1.30918
-11.65
1375.93
398
2012.09.14 10:45
ティーピー
159
0.04
1.30918
0.00000
1.30918
22.77
1398.70
実際には、ObjectsDeleteAll(0,OBJ_ARROW_RIGHT_PRICE) というコマンドから全てが始まりました。
で、別のバリエーションであるObjectsDeleteAll(OBJ_ARROW_RIGHT_PRICE) を試してみました。
拝啓、ヘルプをお読みください :)
Alpha-Forexでは上記のコマンドを使ったインデックスが正しく機能するのに、Saxo Bankではオブジェクトが削除されなくなるのはなぜでしょうか?
その後、スクリプトの実験を始めたら、すべての端末でオブジェクトが削除されなくなりました。
1つ目はメインチャートウィンドウで、2つ目はすべてで見ています。結論 - 1) ウィンドウインデックスを使用して、関数が削除するオブジェクトを見つけるために通過するオブジェクトの数を削減します。2) 名前で削除する場合(名前の一部、通常mqlプログラムはオブジェクトに個人的な接頭辞を付けるので)、最後の(作成時間で最も古い)オブジェクトから検索ループを使用します。
確かにオブジェクトの削除には問題がありますが、オブジェクトの数が多く、0からObjectTotal()-1になった場合、削除されないオブジェクトがあります。開発者に質問、バッファメモリの割り当てが足りないのでは?
例