ああ、ここで "読書室 "で最もおいしいが登場し、何をどのように読んでみましょう...
特にそのような著者から。:)
スワップ計算機能も欲しいですね。 スワップには5種類あって、それぞれニュアンスが違う。
科学的な方法では正しいところにたどり着けないこともある。
選択で3つのバリエーションを見つけましたが、まだSYMBOL_SWAP_MODE_BY_INTERESTが あります。この計算方法のブローカーが見つからないので、確認できません。
もし、CodeBaseに指定した通貨とロットでのスワップ計算機能を掲載する可能性があるのであれば、お願いします。
Если даже торговля на данном счете разрешена, то это еще не означает, что эксперт имеет право торговать. Чтобы проверить, разрешено ли торговать эксперту, пишем:
取引はできるのに、Expert Advisorが取引できない場合とはどのようなケースですか?
ブローカーが禁止しているのか、端末の設定なのか。
4.と類推すると、「...エキスパートが取引を許可されており、取引操作のフローが自由である場合...」となります。
すなわち、IsTradeAllowed= IsExpertEnabled+ IsTradeContextBusy ?
興味深く、必要な記事だ!この記事にある計算式を試してみたところ、こうなった。EURGBPを例にしてみましょう。口座通貨はドルです。一番近い通貨ペアはEURUSD、つまりmode=trueです。ここまではいいのですが、必要な証拠金を決定するために、この記事の計算式を使います:
if(direction==POSITION_TYPE_BUY)
{
//--- 逆引用
if(mode)
{
//--- 逆指値の買値でカウントする。
calc_price=tick.ask;
answer=lot*lot_size*calc_price;
}
...
if(direction==POSITION_TYPE_SELL)
{
//--- 逆引用
if(mode)
{
//--- 逆引きの売値で数える
calc_price=tick.bid;
answer=lot*lot_size*calc_price;
}
つまり、記事によると、買いの場合、必要な証拠金は次のようになります:
買い:マージン =ロット*ロットサイズ*ティックアスク/レバレッジ
そして、売るときは
売り: 証拠金=ロット*ロットサイズ*ティック_ビッド/レバレッジ
これらの数式をシンプルなEAにコード化し、メタトレーダーが必要な証拠金を教えてくれるように、あらかじめ低資金でEURUSDを売り買いしてみます。同時に、計算した証拠金を出力します。テスターからはこのようなメッセージが表示されます:
2010.07.06 16:34:01 Core 1 no enough money [instantsell 0.10 EURGBP at 0.82227 sl: 0.83296 tp: 0.79796]
2010.07.06 16:34:01 Core 1 PrevBalance: 10.00, PrevEquity 10.00, PrevMargin: 0.00, NewMargin:122.91, NewFreeMargin: -112.91- テスターが計算したマージン
2010.07.06 16:34:01 Core 1 Error:資金不足 です。自由証拠金 = 10、必要証拠金 =122.899 - 弊社が計算した証拠金。
2010.07.06 16:34:01 Core 1 資金不足 [instantbuy 0.10 EURGBP at 0.81247 sl: 0.80191 tp: 0.82988]
2010.07.06 16:34:01 Core 1 PrevBalance: 10.00, PrevEquity 10.00, PrevMargin: 0.00, NewMargin:122.72, NewFreeMargin: -112.72- テスターが計算したマージン
2010.07.06 16:34:01 Core 1 Error: 資金不足です。自由証拠金 = 10、必要証拠金 =122.737 - 弊社が計算した証拠金。
違いがある。必要マージンの計算式を次のように変更します。
買い: 証拠金 =ロット*ロットサイズ*ティック_ビッド/レバレッジ
売り: 証拠金 =ロット*ロットサイズ*ティックアスク/レバレッジ
これは記事と矛盾している。このようなメッセージをテスターから受け取る:
2010.07.06 16:39:49 Core 1 no enough money [instantsell 0.10 EURGBP at 0.82227 sl: 0.83296 tp: 0.79796]
2010.07.06 16:39:49 Core 1 PrevBalance: 10.00, PrevEquity 10.00, PrevMargin: 0.00, NewMargin:122.91, NewFreeMargin: -112.91- テスターが計算したマージン
2010.07.06 16:39:49 Core 1 Error: 資金不足です。Free margin = 10, required margin =122.911 - margin calculated by us
2010.07.06 16:39:49 Core 1 no enough money [instantbuy 0.10 EURGBP at 0.81247 sl: 0.80191 tp: 0.82988]
2010.07.06 16:39:49 Core 1 PrevBalance: 10.00, PrevEquity 10.00, PrevMargin: 0.00, NewMargin:122.72, NewFreeMargin: -112.72- テスターが計算したマージン
2010.07.06 16:39:49 Core 1 Error: not enough money.自由証拠金 = 10、必要証拠金 =122.722 - 弊社が算出した証拠金
.
ここで、エキスパートアドバイザーが「間違った」方法で計算した証拠金は、テスターが計算した証拠金とまったく同じです。EURGBPのようなクロスを計算する場合、テスターでも記事でもビッドとアスクが並べ替えられていることがわかります。記事とテスターのどちらが正しいのでしょうか?
この記事は私にとって有益で良いものだ。
理解するためにも、時間を節約するためにもね。ありがとう
この機能で何が得られるのか理解できません。
担保が必要な 場合、契約金額をレバレッジで割るべきではないでしょうか?

- www.mql5.com

- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事 エキスパートアドバイザーの資金管理のためのファンクション はパブリッシュされました:
トレード戦略の開発は主に市場に入り、そして、出るためのパターンの探索と、ポジションの維持に注目している。もし自動トレーディングのためにあるパターンをルールとして形式化できれば、トレーダーはポジションの量、マージンのサイズを計算する問題に立ち向かい、さらに貸付資金の安全なレベルを維持して自動モードでオープンなポジションを確実にするであろう。この論説では MQL5 言語を用いてこれらの計算を行う簡単な例を構築する
作者: MetaQuotes Software Corp.