"ダミー "からの質問 - ページ 177

 
tol64:

OnTrade()では、サーバーからレスポンスを受信します。つまり、OnTrade()でイベントをチェックすれば、ポジションがあるかないかは、すでに確実にわかるということです。DEAL_ENTRY_FULLOUT(完全終了)やDEAL_ENTRY_PARTOUT(部分終了)などの標準オプションを提供すれば、すべてを完璧にエレガントに することも可能ですが。)))


良い提案ですね。リアルタイムで今この瞬間は問題ないのですが、履歴を分析する際には、そのポジションを作ったすべての取引の出来高をまとめ、最終的にいつ決済されたかを知る必要があります。
 
Valmars:
これは良い提案だと思います。リアルタイムで現在を見る分には問題ありませんが、履歴を分析する際には、そのポジションを形成したすべての取引の数量を合計し、最終的にいつ決済されたかを知る必要があります。
そうですね、歴史を分析するのはもっと難しいです。確かに、必要な情報はすべてコメントに収まるのですが、そうするとコードがどんどん「モッタイナイ」ものになってしまいます。:)
 
tol64:
そうですね、ストーリーを分析するのは難しくなりました。確かに、必要な情報はすべてコメントに収められますが、そうするとコードはどんどん「モッタイナイ」ものになってしまいます。:)
コメントを通じて、もちろん可能ですが、自分のEAによる自動売買の場合のみで、他の人の口座を分析する場合、また手動でコントロールする場合でも成功しません。HistorySelectByPosition() による選択時のみ。
 
Valmars:
コメントを通じては、もちろん可能ですが、あくまで自分のEAの自動売買においてであり、他人のアカウントを分析する場合や、手動制御でも機能しません。HistorySelectByPosition() による選択時のみ。

ずっとずっと前に、このような大量のゴミの山を不要にする解決策を思いついたのです。

でも、それは開発者側の話です。:(

これは、取引の 説明(構造)に、(取引が行われた後の)シンボルの結果としてのオープンポジションを 記述するフィールドを追加することで構成されています。

このフィールドの正の値は買いポジション、負の値は売りポジションを意味します。 0 = ポジションなし。

--

これは今からでも可能であり、サーバーに損害を与えることはありません。サーバーを変更する必要はありません。まったく。すべては端末の中で解決できる。

// この変更は、歴史上の位置の計算をめぐる混乱について議論しているすべてのフォーラムの投稿にクレジットを支払うよりもさらに安上がりです。:)

 
MetaDriver:

...取引の 説明(構造)に、(取引が行われた後の)商品の結果としてのオープンポジションを 記述するフィールドを追加する。

このフィールドの正の値は買いポジション、負の値は売りポジションを意味します。 0 = ポジションなし。

面白い動きですねー。また、新しいプロパティDEAL_ENTRY_DECREASE(数量減少)とDEAL_ENTRY_INCREASE(数量増加)と組み合わせれば、完璧です:取引結果の数量が必要な方は弊社に、取引結果(数量減少/増加)のみが必要な方は弊社にご相談ください。

あなたの提案について、BODに手紙を書きましたか?- だって、ナイスアイデアをダダ漏れさせるのって、なかなか大変なんですよ。

MetaDriver

これは現在でも可能であり、どのサーバーも被害を受けることはない。サーバーを変更する必要はありません。まったく。
// この変更は、履歴上の位置計算の混乱について議論しているすべてのフォーラムの投稿にクレジットを支払うよりもさらに安上がりです。:)

"歴史上のポジションを数える周りの手間を議論するすべてのフォーラムの投稿のためのクレジット" - 彼らはそんなに高価なのですか?:)変化の祭壇に捧げる :)

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства сделок
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства сделок
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства сделок - Документация по MQL5
 
Yedelkin:

面白い動きですねー。また、新しいプロパティDEAL_ENTRY_DECREASE(ボリューム減少)とDEAL_ENTRY_INCREASE(ボリューム増加)と組み合わせれば 完璧です:特定のトレードの結果ボリュームが必要な方、歓迎です!トレード結果のみ(「ボリューム減少/増加」として)必要な方、歓迎 です!(笑)。

CDに書いた企画書について?- なぜなら、美しいアイデアを載せるのは難しいことではないからです。

"履歴のポジション計算の手間を論じたフォーラムへの投稿はすべてクレジット"そんなに高いの?:)変化の祭壇に彼らを捧げる :)

いや、根本的なデータ構造を変えるような提案には、非常にストレスを感じるようです。

そして、私は本当に喧嘩が嫌いなんです。

とにかく、「根本的な」提案になるとコンプレックスになるんです。:)

// たくさんやっていて、実装されているのはごく一部。

この提案には価値があると思うので、ぜひ賛同してほしいですね。

 
MetaDriver:

いや、根本的なデータ構造を 変えるような提案に対しては、非常にピリピリしているんですよ。

そして、私は本当に喧嘩が嫌いなんです。

とにかく、「根本的な」提案になるとコンプレックスになるんです。:)

// たくさんやって、実装されたのはごくごく一部。

この提案には価値があると思うので、ぜひ応援してください。

OK、過激な原理主義者である私が引き下がる理由はないでしょう :)もし、根本的なデータ構造を変えるという提案が、害ではなく益のためであるなら、それは思想的に正しい提案と言えるでしょう。
 
ありがとうございます!!!
 

皆さん、こんにちは。

MT5テスターで、ある 時点」で取引(買いまたは売り)を開始した場合、アドバイスをお願いします。

しかし、この時点では、通貨ペアの気配値はありませんでした(つまり、データにギャップがあり、バーM5の開始が00:05で、その次のバーが00:25に開始されています)。

そして、例えばテスターで00:15に取引を開始します。

テスターが最初のバーから(クロウズ)、または2番目のバーから(オープン)取引で設定した価格のこと。

それとも、まったく開くことを拒否されるのでしょうか?

 
私は5つの注文を開こうとしている。 5番目の端末のクセをマスターしようとしている。ということで、40分ほど理解していないのですが、ログに何も出力されていないのですもし可能なら、ぜひご覧ください。
//+------------------------------------------------------------------+
//|                                                     ордерній.mq5 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+

uint resultat=0;
          int i;
void OnTick()
  {
//---
                      for( ;i<5;i++){

 // if( resultat!=10009){
   MqlTick last_tick;
SymbolInfoTick(_Symbol,last_tick);
double Ask=last_tick.ask;
double Bid=last_tick.bid;

   MqlTradeRequest request={0};
   MqlTradeResult result={0};
   
   request.action= TRADE_ACTION_DEAL;
   request.magic =600;
   request.symbol=Symbol();
   request.price=Bid;
   request.deviation=20;
   request.volume=1;
   request.sl=Bid-300*Point();
   request.tp=Bid+300*Point();
   request.type=ORDER_TYPE_BUY;
   OrderSend( request,   result    );    
        
  int Error=GetLastError( ) ; ResetLastError();
  printf("Error %i ",Error);
  
   resultat= result.retcode ;
   printf("resultat %i ",resultat); //}
   Print ( i, PositionsTotal());
   // int PositionTicket= PositionGetInteger(POSITION_IDENTIFIER)
   
                                          }
  

   
  }
//+------------------------------------------------------------------+

 bool  PositionModify( int PositionTicket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)
      {  MqlTradeRequest request  = {0};

そう、オーダーは開けるが、プリンターは書かないのだ。と書かれています。

2012.09.04 17:20:10 取引 '1232639': 注文番号11979593 1.00 / 1.00 EURUSD at 1.25755 で買い 完了

2012.09.04 17:20:10 取引 '1232639': 取引 #11107137 買 1.00 EURUSD at 1.25755 完了 (based on order #11979592)

2012.09.04 17:20:10 トレード '1232639': 1.25739 で 1.00 EURUSD を即買い sl: 1.25439 tp: 1.26039 (deviation: 20)


2012.09.04 17:20:10 トレード '1232639': 1.25739 で 1.00 EURUSD を即買い sl: 1.25439 tp: 1.26039 (deviation: 20)

2012.09.04 17:20:09 Expert Advisor (EURUSD,M5) が正常にロードされました。