if(BuyCount()>0)
{
Print("Уже есть позиция на покупку !!!");
return; // не добавлять к открытой позиции на покупку
}
SL=NormalizeDouble(latest_price.ask - STP*_Point,_Digits);
TP=NormalizeDouble(latest_price.ask + TKP*_Point,_Digits);
m_trade.SetExpertMagicNumber(Magic);
m_trade.Buy(lots1,_Symbol,0,SL,TP,"Lag-MA_IAMA(conversely)_2.5.6.7 + 2");
m_position.Select(_Symbol);
{
ulong myMagic=m_position.Magic();
Print(" Открыта поза Бай с магиком № ",myMagic,", И спредом ",SymbolInfoInteger(_Symbol,SYMBOL_SPREAD));
}
この場合、「より良い」ではなく、まさに必要なものです。これは標準的な取引関数のラッパークラスです。複数のウィザードを保存することはできません。そのため、新しいマジックを使ってポジションを開く必要があるときは、その都度マジックを設定する必要があります。
一般的には以下のような順序になります。
など...
なぜそのような言い方をしたかというと、人によっては違う意見もあるでしょうし、それも効果的だからです。
この場合、「より良い」ではなく、まさに必要なものです。これは標準的な取引関数のラッパークラスです。複数のウィザードを保存することはできません。そのため、新しいマジックを使ってポジションを開く必要があるときは、その都度マジックをセットする必要がある。
一般的には以下のような順序になります。
など...
こんな感じでしたね。
m_trade.SetExpertMagicNumber(Magic);ポジションを開く 前または後にm_trade.Buy(lots1,_Symbol,0,SL,TP,"Lag-MA_IAMA(conversely)_2.5.6.7 + 2") を実行します。
CTradeクラスにはGetExpertMagicNumber メソッドがないため、トレード操作 後にこのコードをプリントアウトしてください。
こうすることで、両方のEAが異なる魔法を持っているかどうかをチェックすることができます。
ありがとうございます、より便利になりました。CPositionInfoクラスは必要ない、位置を選択する必要がない。テスターでは動きますが、アカウントでの開発を待つ必要があります。
SymbolInfoSessionQuoteと SymbolInfoSessionTradeの 違いについて教えてください。
あるいは、同じように、クォートセッションとトレードセッションの違いは何ですか?
キ タ━━━━(゚∀ ゚)━━━━!そして、session_indexとは、// セッション番号
番号のついたセッションがあるのか?どんな原理で番号を振っているのか、どこに書いてあるのか。
MQL5でプログラミングする場合、標準のCExpertSignalクラスのvoid Ignore(long value) { m_ignore=value; }メソッドをカスタムTrailingクラスで使用する方法を教えて下さい。どうすればアクセスできますか?
私は、ポジションをオープンしたりクローズしたりするメソッドを提供するカスタムシグナルクラスを持っています。しかし、Trailingでは、別の方法でポジションを維持したいと思いました。MySignalとMyTrailingを別々に作成した場合、先に発生した条件によってポジションがクローズされます。Trailing条件が先に発動している場合は、問題ありません。ただ、MySignalから新しい(反転)シグナルが来てポジションが反転することもあり、その時はクローズせず、新たにオープンした後にTrailingを伴って欲しいです。ベースクラスを調べてみたところ、ベースとなるシグナルクラスのm_ignoreが原因になっているような気がしています。適切なフィルタで値1を代入すれば、その通りに動作するようです。Expert AdvisorクラスのOnInitにfilter0.Ignore(0)を追加しています。しかし、私はOOPの初心者で、CExpertSignalクラスから 継承されていないMyTrailingクラスでこの値を変更する方法を理解していません(仮に filter0.Ignore(1) とします)。どうしたらよいかアドバイスをお願いします。
実は、もっと一般的な質問ですが、子孫ではない2つのクラス間で情報を渡すにはどうしたらいいのでしょうか?トレーリングクラスからシグナルクラスへ情報を転送する方法は?おそらく、グローバル変数を作り、それを介して通信することができるのでしょう。しかし、これはOOPにおけるprotected memberの論理に照らし合わせると、かなり倒錯しているように見えます。
SymbolInfoSessionQuoteと SymbolInfoSessionTradeの 違いについて教えてください。
あるいは、同じように、クォートセッションとトレードセッションの違いは何ですか?
キ タ━━━━(゚∀ ゚)━━━━!そして、session_indexとは、// セッション番号
番号のついたセッションはあるのか?どのような原理で番号が振られているのか、どこに書いてあるのか。
わかりやすく言うと
クォートセッション - クォートが行われている(ただし、取引が禁止されている場合もある)。
取引セッション(クォートセッション内、またはクォートセッションと同時)-取引可能です。
セッションインデックス - サーバー時間 00:00:00-23:59:59 のセッションのインデックス番号(区切りがある場合、1より大きい)。
各シンボルの仕様については、市場概要でご確認ください。
わかりやすく言うと
クォーテーションセッション - クォーテーションが行われている(ただし、取引が禁止されている場合もある)。
取引セッション(クォートセッション内、またはクォートセッションと同時)-取引可能です。
セッションインデックス - サーバー時間 00:00:00-23:59:59 のセッションのインデックス番号(ギャップがある場合、セッションは 1 よりも大きくなります)。
市場概要の各シンボルの仕様をご覧ください。
分かりやすい説明ありがとうございます。あなたのおかげで助かりました。
Centシグナルは、今や無料でなければできない。
プロフィールの名前を編集できないのはなぜですか?
なぜ、プロフィールの名前を編集できないのですか?
今確認したところ、信号名は完全に編集可能です。
今確認したところ、信号名は完全に編集可能です。
ファーストネームのことですが、実名に変更しなければならないと書いてありますが、うまくいきません