[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 525 1...518519520521522523524525526527528529530531532...631 新しいコメント Евгений 2012.11.19 17:42 #5241 Sarguss: こんばんは。 コーディングに関しては、ちょっと「クルクルパー」なんです :)フィボナッチ指標に基づいたExpert Advisorを構築しています。今のところ、戦略へのこだわりはない。問題は7つのフィボナッチレベルですが、それぞれのレベルをクロスさせる方法は、2種類の保留注文だけを設定し、それ以上は設定しないことです。 何かヒントがあれば幸いです。 ぎこちないロシア語で申し訳ありません。 仕事内容 追伸:「フナにはカマス」(ロシアの諺)。 削除済み 2012.11.19 18:45 #5242 Roll: 仕事内容 追伸:「フナにはカマス」(ロシアの諺)。 ことわざをありがとうございます:)))本題に入ります。どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Without you nowhere - 4.完成させる - どんな答えでもProfi! [Deleted] 2012.11.19 18:49 #5243 こんにちは、専門家の皆さん、スクリプトを作るのを手伝ってください。チャートには2つのMA(移動平均 線)指標があり、MA1が赤、MA2が青で表示されています。スクリプトのタスクは、MA1とMA2を交差させ、赤い線が青い線を上から下へ交差するようにすることである。そこで、A点では売り注文を決済して買い注文を出し、B点では買い注文を決済して売り注文を出すスクリプトが必要です。このループは無限大になるはずです。似たようなコードを添付します。 ファイル: tradingexpertq_1_.mq4 13 kb Viktar Dzemikhau 2012.11.19 20:32 #5244 Lisi4ka330: 混乱を悪化させないために、前回の回答での間違いを訂正したいと思います。"array1[Bars*6-60,60][0]"という表記は、Bars*6がarray1の要素の合計数なので、正しくありません。各バーには6つのプロパティがあり、仮にバーが30本あるとすると、6を掛けると最初の配列の要素数である180が得られます。2番目の配列には60個の空き「セル」(つまり10×6のプロパティ)しかないので、1番目の配列から60個の要素だけを選んでコピーする必要があります。Bars*6-60,60]という式を使って、合計から60を引く、つまり180 - 60 = 120となり、最初の配列の120の要素が2番目の配列の0要素に、121が最初の配列にコピーされ、以下同じとなります。もう一つの疑問は、最後に形成された小節の情報が、最初の配列の最初ではなく、最後に書かれていることが、どうして分かったのか、ということです.しかし、どうやら答えは関数コードの中にあるようで、これ以上掘り下げても意味がないようです...。 まあ、データベースがあるから、関係ないんですけどね。ナターリアは論理的に正しく書いている。また、バーが30本ある場合でも、array1の インデックス値は120です。これに伴い,初期化時にarray2 の対応するインデックスの値を10と宣言して います.https://docs.mql4.com/ru/array/ArrayCopydouble array2[10][6];Cの本で、私はそう読んだ。C 言語は配列のオーバーランを制御しないので、技術的にはの ように、存在しないインデックスを持つ要素に何かを書き 込むことができます。しかし、その際、アレイに属さないメモリ上のセルを消去することになるので、そのようなステップの結果は予測不可能で、多くの場合、プログラムはハングアップして しまうのです。その結果,配列1(コピー元配列)の インデックスが配列2(コピー先配列)の対応するインデックスより大きいことが判明しました.そして、結果的にそういうやり方はしない方がいい!ということです。そういうことなんだ...。 Pacman 2012.11.20 08:57 #5245 みなさん、こんにちは。初めてEAを書こうとしたのですが :-) 、いくつか困難が生じました。過去n本のバーの最大値と最小値を表示するインジケータがあり、最大値または最小値を割ったら注文を出すというロジックです。EAをチャートに貼り付けると、売りポジションを オープンしてしまいます。なぜそのようになるのかはわかりません。インジケーターのパラメータを送信するiCustom()関数でエラーになっているのだと思います。EAとインジケータを添付します。 ファイル: xox.mq4 10 kb Pacman 2012.11.20 09:05 #5246 そして、その指標となるのがこちら。 ファイル: go_go_1.mq4 2 kb TarasBY 2012.11.20 09:23 #5247 Pacman:皆さん、こんにちは。初めてEAを書こうとしたのですが :-) 、いくつか困難が生じました。過去n本のバーの最大値と最小値を表示するインジケータがあり、最大値または最小値を割ったら注文を出すというロジックです。EAをチャートに貼り付けると、売りポジションをオープンしてしまいます。なぜそのようになるのかはわかりません。インジケーターのパラメータを送信するiCustom()関数でエラーになっているのだと思います。Expert Advisorとインジケータを添付します。 インジケータ配列の0番目のインデックスを埋めない。 for(k=1; k<=Quant_Bars; k++) { Line_1[k]= Minimum; Line_2[k]= Maximum; }が、それにアクセスする。 double L_1= iCustom(NULL,0,"Go_go",K,0,0); //Линия минимума double L_2= iCustom(NULL,0,"Go_go",K,1,0); //Линия максимума ちょっと(構造的に)不格好ですが、最初のうちはこれで大丈夫でしょう。アドバイス:「コードを書くための正しいアプローチにすぐに慣れること」。例えば、この条件をコードで使用します。 if(Total==0 && Opn_B==true) //Открытых ордеров нет + なぜなら、遅かれ早かれ、テスターからオンライン取引に切り替わり、複数のExpert Advisorが並行して動作するようになり、このコードは動作しなくなるからです。 Victor Nikolaev 2012.11.20 09:45 #5248 Pacman: そして、その指標となるのがこちら。iHighest() とiLowest()のどこが問題なのでしょうか? Владимир Тезис 2012.11.20 10:41 #5249 TheXpert 2012.11.20 10:44 #5250 0xはまさに16桁の数字です。 1...518519520521522523524525526527528529530531532...631 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんばんは。
コーディングに関しては、ちょっと「クルクルパー」なんです :)フィボナッチ指標に基づいたExpert Advisorを構築しています。今のところ、戦略へのこだわりはない。問題は7つのフィボナッチレベルですが、それぞれのレベルをクロスさせる方法は、2種類の保留注文だけを設定し、それ以上は設定しないことです。
何かヒントがあれば幸いです。
ぎこちないロシア語で申し訳ありません。
仕事内容
追伸:「フナにはカマス」(ロシアの諺)。
仕事内容
追伸:「フナにはカマス」(ロシアの諺)。
ことわざをありがとうございます:)))本題に入ります。
どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Without you nowhere - 4.
完成させる - どんな答えでもProfi!
こんにちは、専門家の皆さん、スクリプトを作るのを手伝ってください。チャートには2つのMA(移動平均 線)指標があり、MA1が赤、MA2が青で表示されています。スクリプトのタスクは、MA1とMA2を交差させ、赤い線が青い線を上から下へ交差するようにすることである。そこで、A点では売り注文を決済して買い注文を出し、B点では買い注文を決済して売り注文を出すスクリプトが必要です。このループは無限大になるはずです。似たようなコードを添付します。
混乱を悪化させないために、前回の回答での間違いを訂正したいと思います。"array1[Bars*6-60,60][0]"という表記は、Bars*6がarray1の要素の合計数なので、正しくありません。各バーには6つのプロパティがあり、仮にバーが30本あるとすると、6を掛けると最初の配列の要素数である180が得られます。2番目の配列には60個の空き「セル」(つまり10×6のプロパティ)しかないので、1番目の配列から60個の要素だけを選んでコピーする必要があります。Bars*6-60,60]という式を使って、合計から60を引く、つまり180 - 60 = 120となり、最初の配列の120の要素が2番目の配列の0要素に、121が最初の配列にコピーされ、以下同じとなります。もう一つの疑問は、最後に形成された小節の情報が、最初の配列の最初ではなく、最後に書かれていることが、どうして分かったのか、ということです.しかし、どうやら答えは関数コードの中にあるようで、これ以上掘り下げても意味がないようです...。
まあ、データベースがあるから、関係ないんですけどね。ナターリアは論理的に正しく書いている。また、バーが30本ある場合でも、array1の インデックス値は120です。これに伴い,初期化時にarray2 の対応するインデックスの値を10と宣言して います.
https://docs.mql4.com/ru/array/ArrayCopy
Cの本で、私はそう読んだ。
C 言語は配列のオーバーランを制御しないので、技術的にはの ように、存在しないインデックスを持つ要素に何かを書き 込むことができます。しかし、その際、アレイに属さないメモリ上のセルを消去することになるので、そのようなステップの結果は予測不可能で、多くの場合、プログラムはハングアップして しまうのです。
その結果,配列1(コピー元配列)の インデックスが配列2(コピー先配列)の対応するインデックスより大きいことが判明しました.そして、結果的にそういうやり方はしない方がいい!ということです。そういうことなんだ...。
みなさん、こんにちは。
初めてEAを書こうとしたのですが :-) 、いくつか困難が生じました。
過去n本のバーの最大値と最小値を表示するインジケータがあり、最大値または最小値を割ったら注文を出すというロジックです。
EAをチャートに貼り付けると、売りポジションを オープンしてしまいます。なぜそのようになるのかはわかりません。
インジケーターのパラメータを送信するiCustom()関数でエラーになっているのだと思います。
EAとインジケータを添付します。
皆さん、こんにちは。
初めてEAを書こうとしたのですが :-) 、いくつか困難が生じました。
過去n本のバーの最大値と最小値を表示するインジケータがあり、最大値または最小値を割ったら注文を出すというロジックです。
EAをチャートに貼り付けると、売りポジションをオープンしてしまいます。なぜそのようになるのかはわかりません。
インジケーターのパラメータを送信するiCustom()関数でエラーになっているのだと思います。
Expert Advisorとインジケータを添付します。
インジケータ配列の0番目のインデックスを埋めない。
が、それにアクセスする。
ちょっと(構造的に)不格好ですが、最初のうちはこれで大丈夫でしょう。アドバイス:「コードを書くための正しいアプローチにすぐに慣れること」。例えば、この条件をコードで使用します。
なぜなら、遅かれ早かれ、テスターからオンライン取引に切り替わり、複数のExpert Advisorが並行して動作するようになり、このコードは動作しなくなるからです。そして、その指標となるのがこちら。
iHighest() とiLowest()のどこが問題なのでしょうか?