エラー、バグ、質問 - ページ 1009

 
TheXpert:

ボタンコールのソフトウェア的なアナログはないのですか?

ChartRedrawが動作しない。

MQL5では無理だし、他の方法も知らない。サービスデスクにはすでにリクエストがありますが、まだ何もありません。
 

よし、別の方法で質問してみよう。もしかしたら、普通の答えがあるかもしれない。

タイマーイベントの到来で計算されるインジケーターがあります。

ティックがない場合、インジケータのデータが更新されても、強制的にチャートが更新されるまで、チャート上に表示されません。

ティックなしで新しいデータの自動表示をする普通の方法はないのでしょうか?

 
TheXpert:

よし、別の方法で質問してみよう。もしかしたら、普通の答えがあるかもしれない。

タイマーイベントの到来で計算されるインジケーターがあります。

ティックがない場合、インジケータのデータが更新されても、強制的にチャートが更新されるまで、チャート上に表示されません。

ティックなしで新しいデータを自動的に表示する通常の方法はありますか?

新しいティックが来るまで、データセット全体が表示されないという問題があります。そして、更新 ボタンを押すか、タイムフレームを切り替えるかのどちらかです。このような場合のために、タイマでOnCalculate()を呼び出すようにしましたが、役に立ちません。インジケーターバッファの データを受信することはできますが、新しいティックや強制更新、タイムフレームが切り替わるまで表示されないのです。

私はバグだと考えています。

皆さんも同じケースでしょうか、それとも最新の 新着データだけが表示されないのでしょうか。

 
tol64:

あなたも同じですか、それとも最新の 新しいデータが表示されていないだけですか?

同じでしょう。現在、オフラインと週末作業用のロジックを書いています。

どうやら、ソフトウェアにこの機能を利用させるのは、リソース的に非常に高価なようです。しかし、インジケータがより多くの(x)値を変更した場合、更新を行う価値があると思います。

 
ChartRedrawは 役に立ちませんか?
 
Renat:
ChartRedrawは役に立ちませんか?
最初にチェックしたのは...残念でした。
 
TheXpert:

よし、別の方法で質問してみよう。もしかしたら、普通の答えがあるかもしれない。

タイマーイベントの到来で計算されるインジケーターがあります。

ティックがない場合、インジケータのデータが更新されても、強制的にチャートが更新されるまで、チャート上に表示されません。

ティックなしで新しいデータの自動表示を行う通常の方法はありますか?

古来より試行錯誤してきた方法は、言い方は悪いですが、時間軸を切り替えることです。

ボタンをクリックすることで、https://www.mql5.com/ru/code/224。

ChartReinit
ChartReinit
  • 投票: 7
  • 2010.11.29
  • Vladimir Gomonov
  • www.mql5.com
Кнопочная переинициализация чарта с перерасчетом всех индикаторов, а также простенький и прозрачный объектно-ориентированный пример обработки всех чартов из одного эксперта.
 

ビルド821

標準ライブラリ(CTradeクラス)を使用した場合、買いマーケットポジションを開くときに、2.5秒後にストップまたは利益を変更するように選択できる(それ以下は不可)。

PositionSelect(_Symbol)

を返します。

売り玉はない


//+------------------------------------------------------------------+
//|                                                test_open_buy.mq5 |
//|                                                         olyakish |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "olyakish"
#property link      "http://www.mql5.com"
#property version   "1.00"
#include <Trade\Trade.mqh> 
CTrade trade;
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {

   double Ask=SymbolInfoDouble(_Symbol,SYMBOL_ASK); // лучшее предложение на покупку

   bool res=trade.PositionOpen(_Symbol,// инструмент
                               ORDER_TYPE_BUY,// 
                               0.1,// количество лотов для торговли
                               Ask,// последняя цена bid
                               0.0,// Stop Loss
                               0.0,// Take Profit 
                               " ");
// без комментариев  
   Print("res=",res);
   Print(PositionSelect(_Symbol));
   Sleep(2500);
   Print(PositionSelect(_Symbol));

  }
//+------------------------------------------------------------------+
2013.07.01 14:49:57     test_open_buy (EURUSD,M1)       res=true
2013.07.01 14:49:57     test_open_buy (EURUSD,M1)       false
2013.07.01 14:49:59     test_open_buy (EURUSD,M1)       true
Документация по MQL5: Стандартная библиотека / Торговые классы / CTrade
Документация по MQL5: Стандартная библиотека / Торговые классы / CTrade
  • www.mql5.com
Стандартная библиотека / Торговые классы / CTrade - Документация по MQL5
 
void GetHistoryProperties()
  {
// Узнаем, есть ли позиция
 
   HistorySelect(t1,t0);
   ulong    ticket=0;
   uint     total=HistoryDealsTotal();
   
   for(uint i=0;i<total;i++){
  if((ticket=HistoryDealGetTicket(i))>0){
  bool ss=HistoryOrderGetString(ticket,ORDER_SYMBOL,symbol1);//не работает
  Print(symbol1," ---",Symbol()," ",ss," ",ticket);
    //пустое значение symbol1
  //или так
  symbol1=myhistory.Symbol();
  Print(symbol1," ---",Symbol()," ", ticket);
  //пустое значение symbol1
 if (Symbol()==symbol1)   {  //Без этого условия всё работает




     }}}

//---
   SetInfoPanel(); // Установим/обновим информационную панель
  }  
履歴に注文記号が表示されないバグやエラーは?
 
zfs:
注文履歴に注文記号が表示されない......バグかエラーか?

この問いに対する答えは「YES」だと思いました。取引履歴から チケットを選択し、注文履歴から物件を取得しようとします。これらは異なるリストです。

追記 MQL5レシピ - 取引履歴とポジションプロパティ取得関数のライブラリ という例文付きの記事もあります。