どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 464 1...457458459460461462463464465466467468469470471...1178 新しいコメント Vladimir Pastushak 2014.02.06 13:24 #4631 問題が解決しない、ダルくなってきた、ビールを飲んでも効かない。 持っています。 1 - 30のEAがチャートまたはシンボルで動作しており、すべてが異なるMedgic番号を持っています。 2- 各EAには3-5つの未決済注文がある ... タスクは、チャート上のバー内のすべての数字と、それに対する総利益/損失を印刷することです... 掘れども掘れども埒があかない。 #define MagicN 0 #define MagProf 1 ArrayResize(mags,100,1000);ArrayInitialize(mags,0); for(int f=OrdersTotal()-1; f>=0; f--) if(OrderSelect(f,SELECT_BY_POS)) { for(int z=100-1; z>=0; z--) { if(mags[z][MagicN]==OrderMagicNumber()) mags[z][MagProf]+=OrderProfit()+OrderCommission()+OrderSwap(); if(mags[z][MagicN]!=OrderMagicNumber()) { mags[z][MagicN]=OrderMagicNumber(); mags[z][MagProf]+=OrderProfit()+OrderCommission()+OrderSwap(); } } } いい人はできる人を助ける!!!))))))) Victor Nikolaev 2014.02.06 13:30 #4632 VOLDEMAR: 問題が解決しない、ダルくなってきた、ビールを飲んでも効かない。 持っています。 1 - 30のEAがチャートまたはシンボルで動作しており、すべてが異なるMedgic番号を持っています。 2- 各EAには3-5つの未決済注文がある ... タスクは、チャート上のバー内のすべての数字と、それに対する総利益/損失を印刷することです... 掘れども掘れども埒があかない。 いい人はできる人を助ける!!!))))))) 2次元の配列を作成します。1次元目には蓄積された利益、2次元目にはマジックを格納する。 注文を処理する際に、配列の中からマジックナンバーを探し、見つからなければ配列を増やし、見つかれば利益を増やす。 処理が完了したら、結果を画面に表示します Vladimir Pastushak 2014.02.06 13:34 #4633 Vinin: 2次元の配列を作成します。1次元目には蓄積された利益を、2次元目にはメジを格納する。 注文を処理するときは、配列の中から注文を探し、見つからなければ配列を増やし、見つかれば利益を増やします。 処理完了後、結果を画面に表示する ということを書いたのではありませんか? Victor Nikolaev 2014.02.06 13:41 #4634 VOLDEMAR: ということではありませんか? そうではありません。配列のサイズを 定義し、Magik上のインデックスを検索するところ。見てませんでした。 Vladimir Pastushak 2014.02.06 13:44 #4635 for(int f=OrdersTotal()-1; f>=0; f--) // オーダー検索if(OrderSelect(f,SELECT_BY_POS)){for(int z=0; z<ArraySize(mags); z++)// 配列の要素数で2回目のループを行います。{if(mags[z][MagicN]==OrderMagicNumber()) // MagicNumberがすでに存在する場合、利益を追加しよう。{mags[z][MagProf]+=OrderProfit()+OrderCommission()+OrderSwap();}else /マグがない場合{ArrayResize(mags,z,1000); // 配列を展開します。mags[z][MagicN]=OrderMagicNumber(); // マグを格納する。}}} しかし、この構成では、ターミナルがテストされず、critical errorと 表示されます。 Any rookie question, so コーディングの方法は? コーディングのヘルプ Victor Nikolaev 2014.02.06 13:49 #4636 VOLDEMAR: for(int f=OrdersTotal()-1; f>=0; f--) // オーダー検索 if(OrderSelect(f,SELECT_BY_POS)) { for(int z=0; z<ArraySize(mags); z++)// 配列の要素数で2回目のループを行います。 { if(mags[z][MagicN]==OrderMagicNumber()) // MagicNumberがすでに存在する場合、利益を追加しよう。 { mags[z][MagProf]+=OrderProfit()+OrderCommission()+OrderSwap(); } else /マグがない場合 { ArrayResize(mags,z,1000); // 配列を展開します。 mags[z][MagicN]=OrderMagicNumber(); // マグを格納する。 } } } しかし、この構成では、ターミナルがテストされず、critical errorと表示されます。 MagicN 変数とは何か、どこが変わる のか? Vladimir Pastushak 2014.02.06 13:52 #4637 はパラメータ0、MagProfは値1 です。 Victor Nikolaev 2014.02.06 15:14 #4638 VOLDEMAR: のパラメータは0、MagProfのパラメータは1 です。 お試しください #define MagicN 0 #define MagProf 1 double mags[10][2]; int CountMagic=0; void CalcMagic() { for(int f=OrdersTotal()-1; f>=0; f--) // перебор ордеров if(OrderSelect(f,SELECT_BY_POS)) { mags[FindMaic(OrderMagicNumber())][MagProf]+=OrderProfit()+OrderCommission()+OrderSwap(); } } //+------------------------------------------------------------------+ int FindMaic(int Magic) { int Res=-1; for(int i=0;i<CountMagic;i++) { if(mags[i][MagicN]==Magic) Res=i; break; } if(Res==-1) { Res=CountMagic; CountMagic++; if(CountMagic>=ArrayRange(mags,0)) { ArrayResize(mags,CountMagic+10); } } return(Res); } //+------------------------------------------------------------------+ 多次元配列では、ArrayRange()を用いて次元を定義することができる。 Alexey Oreshkin 2014.02.06 16:14 #4639 Marketinfoで取得できるStopLetterとFreeswellがありますが、同じような制限があり、それは有効期限の最短時間に関するもので、通常は15分です。 つまり、保留中の注文を 出した場合、トリガーされなければ、自己削除される最短時間は15分です。それが問題なのです。この限界をプログラムで知るにはどうしたらいいのでしょうか? Boris 2014.02.06 17:52 #4640 Desead: Marketinfoで取得できるstoplayとfreezevelがあり、同じ制限がありますが、これは最小有効期限に関するもので、通常は15分です。つまり、保留中の注文を出した場合、トリガーされなければ自己削除される最小時間は15分です。それが問題なのです。この限界をプログラムで知るにはどうしたらいいのでしょうか? ブローカーに聞く!有効期限を実行しないものもあります。 注文には入れず、条件に従って削除しています。 1...457458459460461462463464465466467468469470471...1178 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
問題が解決しない、ダルくなってきた、ビールを飲んでも効かない。
持っています。
1 - 30のEAがチャートまたはシンボルで動作しており、すべてが異なるMedgic番号を持っています。
2- 各EAには3-5つの未決済注文がある ...
タスクは、チャート上のバー内のすべての数字と、それに対する総利益/損失を印刷することです...
掘れども掘れども埒があかない。
いい人はできる人を助ける!!!)))))))
問題が解決しない、ダルくなってきた、ビールを飲んでも効かない。
持っています。
1 - 30のEAがチャートまたはシンボルで動作しており、すべてが異なるMedgic番号を持っています。
2- 各EAには3-5つの未決済注文がある ...
タスクは、チャート上のバー内のすべての数字と、それに対する総利益/損失を印刷することです...
掘れども掘れども埒があかない。
いい人はできる人を助ける!!!)))))))
2次元の配列を作成します。1次元目には蓄積された利益、2次元目にはマジックを格納する。
注文を処理する際に、配列の中からマジックナンバーを探し、見つからなければ配列を増やし、見つかれば利益を増やす。
処理が完了したら、結果を画面に表示します
2次元の配列を作成します。1次元目には蓄積された利益を、2次元目にはメジを格納する。
注文を処理するときは、配列の中から注文を探し、見つからなければ配列を増やし、見つかれば利益を増やします。
処理完了後、結果を画面に表示する
ということを書いたのではありませんか?
ということではありませんか?
そうではありません。配列のサイズを 定義し、Magik上のインデックスを検索するところ。見てませんでした。
}
しかし、この構成では、ターミナルがテストされず、critical errorと 表示されます。
}
しかし、この構成では、ターミナルがテストされず、critical errorと表示されます。
MagicN 変数とは何か、どこが変わる のか?
のパラメータは0、MagProfのパラメータは1 です。
お試しください
#define MagicN 0 #define MagProf 1
多次元配列では、ArrayRange()を用いて次元を定義することができる。
Marketinfoで取得できるstoplayとfreezevelがあり、同じ制限がありますが、これは最小有効期限に関するもので、通常は15分です。つまり、保留中の注文を出した場合、トリガーされなければ自己削除される最小時間は15分です。それが問題なのです。この限界をプログラムで知るにはどうしたらいいのでしょうか?
ブローカーに聞く!有効期限を実行しないものもあります。
注文には入れず、条件に従って削除しています。