MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 892

 
Seric29:
この質問で助けてくれるみんな。未定義型や任意の型のグローバル変 数を宣言したいのですが、どうすればいいですか?そして、この変数は、テンプレートが適用される関数で使用されます。つまり、関数を呼び出して、任意の型の配列を取ると、計算が行われて結果が関数から返され、またこの変数に代入されます。これらのパラメータの計算結果を変数に格納し、関数を2回呼び出す必要がないようにしたい。最も少ないチェックで普遍的な解決策を見つけるにはどうしたらよいでしょうか、変数の型を変換したり、マクロで変数として宣言することはできますか、どうしたらよいでしょうか。

私の理解が正しければ、次に

https://www.mql5.com/ru/docs/basis/oop/templates

Документация по MQL5: Основы языка / Объектно-ориентированное программирование / Шаблоны функций
Документация по MQL5: Основы языка / Объектно-ориентированное программирование / Шаблоны функций
  • www.mql5.com
Перегруженные функции обычно используются для выполнения похожих операций над различными типами данных. Простой пример такой функции в MQL5 - ArraySize(), которая возвращает размер массива любого типа. На самом деле эта системная функция является перегруженной, и вся реализация такой перегрузки спрятана от разработчика программ на MQL5: То есть...
 
leonerd:

このコメント、よくわからないんです。新たに建てた注文の証拠金よりも低い自由証拠金で、ロックポジション(オープンポジションの反対側)を建てることができます(ロック中ではありません)。では、100%はどこにあるのでしょうか?

USDJPY通貨、レバレッジ1:100。ロット0.1、マージンは100

仕様書によると、ヘッジされたマージンは50000であり、これは50%のマージンを意味します。

ロックポジションを建てるには、口座にあと100の資金が必要です。そうでない場合は、エラーになります.一般的に資金が不足しているため、数字を覚えていない。

そして、ポジションを建てた 後に初めて、実際のマージンが仕様書に記載された値に従って修正されます。

しかし、もし口座に50の利用可能資金しかない場合、0.05で2回開設することができます。

 
Alekseu Fedotov:

もし、私の理解が正しければ

https://www.mql5.com/ru/docs/basis/oop/templates

テンプレート技術の活用については、すでに知っています。このメソッドでは、変数の型を返すことができますが、ある変数の型を別の型に変換することはできません。これは無理かもしれません。

 
Alexey Viktorov:

通貨はUSDJPY、レバレッジは1:100です。ロット0.1、マージンは100

仕様書によると、ヘッジされた証拠金は50,000、つまり50%ということになります。

ロックポジションを開くには、口座にあと100の資金が必要です。そうでない場合は、エラーになります.一般的には、資金が足りないので、数は覚えていません。

そして、ポジションを建てた 後に初めて、実際のマージンが仕様書の値に従って修正されます。

しかし、もし口座に50の自由資金しかない場合、0.05で2回開設することができます。

なるほど、そういうことかもしれませんね。調べてみよう。

注文の価格を確認する必要がある。では、MQL5の関数https://www.mql5.com/ru/docs/trading/ordercalcmargin はどうでしょうか

注文のオープンプライスはパラメータにあります。クロスの場合はどうなのでしょうか?クロスレートはどうなっているのですか?MT5は価格予測の方法を知っているのですか?

Документация по MQL5: Торговые функции / OrderCalcMargin
Документация по MQL5: Торговые функции / OrderCalcMargin
  • www.mql5.com
Вычисляет размер маржи, необходимой для указанного типа ордера на текущем счете и при текущем рыночном окружении без учета текущих отложенных ордеров и открытых позиций. Позволяет оценить размер маржи для планируемой торговой операции. Значение возвращается в валюте счета. [out]  Переменная, в которую...
 
mt5用のfreeNumFractalsインジケータをダウンロードしましたが、フラクタルがチャート上に更新されません。

フリーヌムフラクタルズ

 
Pavel5554:
すでにMT5とこのインジケータを再インストールしましたが、効果がありません。

フリーナム・フラクタルズ

その指標は何ですか?効果がないのですが、どこにリンクしているのでしょうか?

 
leonerd:

よし、これでいいのかもしれない。チェックしなければなりませんね。

注文の価格について。MQL5の関数https://www.mql5.com/ru/docs/trading/ordercalcmargin はどうでしょうか?

注文のオープンプライスはパラメータにあります。クロスの場合はどうなのでしょうか?クロスレートはどうなっているのですか?MT5で価格を予測できますか?

まあ、全部よく読まないといけないんですけどね。ドキュメントから引用します。

現在の口座に未決済注文や未決済ポジションがないものとして計算されます。証拠金の価値は多くの要因に左右されるため、市場環境が変化すると変動する可能 性があります。

計算が行われる...すなわち、得られた値は開ポジションを考慮しないものであり、反対側のポジションが開かれた場合にのみ、仕様に従って補正されます。こういうことだったんですね。

マージン値...は、「背景から」計算されたものであり、実際の値とは異なる場合があります。

 
Sergey Voytsekhovsky:

素晴らしいアドバイスと未来への科学!!!!さらにもう一歩踏み込んで。以下はその結果です。

そうだったんですね。

となったわけで、アプローチの効果は一目瞭然!!!!ありがとうございます。

カラーストキャスティックインジケーターを提供してくれたSergeiとAlexeyに感謝します。あなたはとても優秀です。リスペクト!

 
自分のインジケータをメインチャートではなくメインウィンドウに表示させるにはどうしたらいいですか(私のインジケータはバーの 形で構築されています)。

私のインジケーターデータがチャートデータに置き換わるように。

そして、クライアント端末の標準的な指標はすべて、この新しいチャートに投じることができることです。また、これらのインジケータが価格バーではなく、私のインジケータのデータで動作するように。
 

こんな疑問があります。つまり、ループがある

     for(...........)              
     {if(.........){ что-то делаем}else
      if(.........){ break}else{ break;}} 

1回目のブレークは、ループの最初の括弧ではなく、ループの内側に入れられた括弧の中にあります。 2回目のブレークは、さらに内側の括弧の中に入れられた深い位置にあります。この場合、breakが 効かないだけだと理解していましたが、正直なところ、効くのか効かないのかよくわからないまま、プログラムがハングアップして不要な反復を繰り返していました。条件の多いループを終了させるために、ループに終了フラグを追加してみました。たぶん、私にはそれがうまくいかないように思えたのですが、この問題については誰が考えているのでしょうか?