初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 823

 
User_mt5:

どう理解したらいいのか、教えてください。

これらの注文で価格は何度も上がり、最終的には上昇したが、どの注文もポジションになることはなかった。なぜ?

どこかに書かれていたら、リンクを教えてください。


注文を実行するための十分なロットがなかった。

私が知る限り、そしてこのテーマについて少し知っている限りでは、現在の価格より かなり上にリミッターをかける必要があります。

 
Vladislav Andruschenko:

注文を実行するための十分なロットがなかった。

私もそう思います。でも、次はどうするんですか?注文の削除や変更はできません。では、ずっとそこにぶら下がっているのですか?
デモのロット数が少ないというのは意味がわからない。

ウラジスラフ・アンドルシェンコ

私の知る限り、そしてこのテーマについて少し知っている限りでは、現在の価格より かなり高いところにリミッターをかけなければなりません。

いいえ、これは正しくありません。現在の限度額の範囲内であれば、どこにでも注文を出すことができます。StopLevelの制限があります。つまり、StopLevelの値よりも価格に近いところに注文を出すことはできない。

しかし、サーバーがそれを受け入れるなら、すべてがOKということになる。

 
User_mt5:

私もそう思っています。しかし、次に何をすべきなのか。注文の削除や変更はできません。では、ずっとそこにぶら下がっているのですか?
また、デモのロット数が少ないというのは、どういうことなのか、よくわからないのです。

いいえ、それは誤りです。現在の限度額の範囲内であれば、どこにでも注文を出すことができます。StopLevelの制限があります。つまり、StopLevelの値よりも価格に近いところに注文を出すことはできない。

しかし、サーバーがそれを受け入れるなら、すべてがOKということになる。


交換では少し違います。

 
Vladislav Andruschenko:

証券取引所とは少し違うが...。

ヴラド、交換って?どの会社のデモが開いているかがわかる...

 
Alexey Viktorov:

ヴラド、交換って?どの会社のデモが開いているかがわかる...


先物取引のことだ いや、混乱してるんだ 気にしないでくれ 薬物療法中なんだ

 
Alexey Viktorov:

ヴラド、交換って?どの会社のデモが開いているかがわかる......?

初めてなので、そのコメントの内容を説明していただけませんか。
ちなみに、「買い」ボタンを押しましたが、注文は約定せず、ツールボックスのウィンドウには・・・保留のような状態で表示されていますが、チャートには表示されていません。
 
User_mt5:
初めてのことなので、このコメントの内容を説明していただけませんか?
ちなみに、買いボタンを突いたところ、注文は執行されませんでしたが、インストゥルメントウィンドウでは保留のような形で表示され、チャートでは表示されません。
何を説明すればいいのでしょうか?スクリーンショットでは、取引所とは関係のない口座番号と ブローカーの名前が表示されています。
 
Alexey Viktorov:
何を説明するんだ?スクリーンショットでは、取引所とは全く関係のないブローカーの口座番号と 名前が表示されています。

理解できない。

このブローカーがこのシンボルで取引させないのであれば、なぜデモのシンボルリストにこのシンボルを含めたのでしょうか?
また、そうであるならば、現在の受注状況をどのように理解すべきなのか。

さて、もし注文が部分的に執行された場合(5つのシンボルで起こるかもしれません)、残された注文はどうなるのでしょうか?
手動で閉じるまで、または実行されるまで、ライブでなければならないのでしょうか?
もしどこかに書かれていたら、リンクを貼っていただけるとありがたいです。

 
User_mt5:

意味がわからない...。

このブローカーがこのシンボルで取引させないのであれば、なぜデモのシンボルリストにこのシンボルを入れたのでしょうか?
そして、もしそうだとしたら、私たちは現在の受注状況をどのように理解すればよいのでしょうか。

さて、もし注文が部分的に執行された場合(5つのシンボルで起こるかもしれません)、残された注文はどうなるのでしょうか?
手動で閉じるまで、または実行されるまで、ライブでなければならないのでしょうか?
もしどこかに書かれていたら、リンクを貼っていただけるとありがたいです。

オフィスの仕組みの話に、私を巻き込もうとしないでください。特にこの作品とは何年も前に関係を絶ったので、何も知らない。

 
Vladimir Karputov:

大まかなアルゴリズム

  1. OnInit()で2つのハンドル(fastとslowの Moving Averageインジケータ 用)を作成します。
  2. OnTick() (毎ティックではなく、新しいバーでのみ動作することを推奨) で、2つの配列を宣言します - それらのうちの1つは高速MAから値をコピーし、2番目の配列は低速MAからデータをコピーします。
  3. slow MAとfast MAから、例えば最後の100個の値(つまりインデックス "0 "と番号 "100 "のデータをコピーする)をこれらの配列にコピーします。
  4. 配列のインデックス#0がグラフの右端のバーに対応するように、配列を反転させる。
  5. あとは、両方の配列を "0 "から "100-1 "までループして、交差点を探せばいいだけです。交差点を見つけると、ループ変数の値はバー番号になります。
注意:このアルゴリズムには、チェックやエラー保護は一切考慮されていません。

ありがとうございます。最初の2つのアルゴリズムステップが完了し、最初のバーに2つのMAの値があるとき、2つのMAを交差するバーの数を見つけるためのループをどのように書くことができますか?

   MA1_1=iMAGet(handle_iMA_1, 1);      // значение 1-й МА

   MA2_1=iMAGet(handle_iMA_2, 1);      // значение 2-й МА

/

double iMAGet(const int handle,const int index)
  {
   double MA[];
   ArraySetAsSeries(MA,true);
//--- reset error code 
   ResetLastError();
//--- fill a part of the iMABuffer array with values from the indicator buffer that has 0 index 
   if(CopyBuffer(handle,0,0,index+1,MA)<0)
     {
      //--- if the copying fails, tell the error code 
      PrintFormat("Failed to copy data from the iMA indicator, error code %d",GetLastError());
      //--- quit with zero result - it means that the indicator is considered as not calculated 
      return(0.0);
     }
   return(MA[index]);
  }

.

理由: