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

 

Buf[0]、Buf[1]があり、関数

初期位置と必要な要素数を処理する

intCopyBuffer(
intindicator_handle,// インジケータ・ハンドル
intbuffer_num,// インジケータ・バッファ番号
intstart_pos,//どこから始めるか
intcount,// 何個コピー するか
doublebuffer[]// データがコピーされる配列
);

CopyBuffer(M_Handl[In][AO_D],0,0,2,Buf);  // я копирую 0-й и 1-й бар по идее

しかし、Bufには0番目の小節がなく、1番目の小節と2番目の小節があるだけです。ティックがあるかないかですが、0本目のバーのインジケータの最終値はあるはずなのに、その値はBuf[1]の値にも及ばず、1本目のバーのインジケータ値とほぼ同じ値になっています。

 

Модератор
216

stringo 2010.07.19 15:59 2010.07.19 15:59:06

キーワード OnTimer。

OK、考えておきます!
 
void OnDeinit(const int reason)
  {
//--   
   int LeftBar = ChartGetInteger(0,CHART_FIRST_VISIBLE_BAR);
   Print(LeftBar);  
  }

タイムフレームが変更された場合、LeftBar=0とする。

再コンパイルが原因なら問題ない。

こうあるべき?

 

教えてください。

トレーダーが作成したプログラムコードのエラーに対して、端末はその機能を保持すべきでしょうか?

例えば、0による除算、存在しない配列データへのアクセスなどです。

機能

bool  IndicatorRelease(
   int       indicator_handle,     // handle индикатора
   );

インジケーターハンドルを削除 し、インジケーターの計算部分を解放します(もう使用されていない場合)。

上記の例では、void OnTick()のボディで使用されています。

void OnDeinitで実験してみることにしました。

ヘルプをみても、どこで使うのか情報がないのですが、おそらく初期化時にハンドルが自動的に解放されるので、そこで使う必要はないのでしょう。しかし、ハンドルとは何なのか、まだ理解していない。

だからチャートからExpert Advisorを削除すると、ターミナルがクラッシュする。

コードを添付します。

もし必要で、それがバグであれば、servicedesk経由で行うことができます。

Документация по MQL5: Доступ к таймсериям и индикаторам / IndicatorRelease
Документация по MQL5: Доступ к таймсериям и индикаторам / IndicatorRelease
  • www.mql5.com
Доступ к таймсериям и индикаторам / IndicatorRelease - Документация по MQL5
ファイル:
servis_2.mq5  1 kb
servis_3.mq5  2 kb
 

PS 294ビルドでの修正に感謝します。以前に確認された問題はすべて修正されています。

新しいものを探してみよう )))

削除済み  
SHOOTER777:

PS 294ビルドでの修正に感謝します。以前に確認された問題はすべて修正されています。

新しいものを探してみよう )))

ハンドルは 、特定のオブジェクト(クラスのインスタンス)にアクセスするための一意の識別子(通常は数字)です。

ハンドルは、単純なデータを除いて、ある種のデータを識別することもできる(ただし、ここには疑問がある)。


この用語は、Windows APIで最も広く使われている。システムで割り当てられたリソースの識別子を表す。例えば、あるファイルを開けば、その開いている ファイルのハンドルを取得し、DLLをロードすれば、そのDLLで何らかのアクションを行うためのハンドルを取得することができます。同様のオブジェクトは他のオペレーティングシステムAPI、例えばLinuxにも存在する。ハンドル自体は(物理的には)OSのシステムオブジェクトへのインデックスまたはポインタです。ハンドルはシステムオブジェクトの識別子として機能し、システムオブジェクトに対するアクションを実行するAPI関数を呼び出す際の引数として渡される。また、Windows APIのCreateFileやLinuxのsocket()など、システムオブジェクトを生成する関数もある。このような関数は、OSが何らかの理由で関数の呼び出しを正常に実行できなかった場合、動作の結果としてハンドルを返すか、文書で規定された特別な値を返します。

プログラミング言語(C言語など)的には、ハンドルは単なるデータ型(通常は整数)です。その作成は、既存の型の他のオブジェクトを作成するのと同じように簡単です。しかし、ハンドルの意味は、OSの中で動いているプロセスの中でしか意味を持ちません。つまり、123456という値を持つハンドルは誤りと認識され、API関数で使用しても何の役にも立たないということです。

削除済み  

開発者の皆様へ

私のリクエスト18959(スワップのロジックが理解できず、賢明な回答が得られない)に注目してください。間違いなのか、一時的な困難なのか、私が馬鹿なのか、教えてください。特に、チャンピオンシップでのスワップ発生の問題に興味があるのですが...。

また、私のリクエスト19046に 注意してください- いくつかの取引(買いとポジションボリュームのトリム)の開始 価格の丸めに関する問題があります

 

エラー,MetaTrader 5 MQL,開設済み,開始日:2010.07.20 09:38,#19056

ご注意ください。

削除済み  

午後...

バグ?

* エディタ内での移動はctrl+TABかターミナル-リターン、コンパイルはF7で...タブ付きのファイル名をマウスでクリックするまでテキストカーソルが見えない...。

*alt+AでRenameALLができない...またマウスを使わなければならない...それがない...。//英語

 
EQU:

午後...

バグ?

* エディタでの移動はctrl+TABかターミナルリターン、コンパイルはF7で...タブでファイル名をクリックするまでテキストカーソルが見えない...。

* alt+AでRenameALLができない...またマウスを使わなければならない...それがない...。//英語


1.リピートできない。Ctrl+Tab、Ctrl+Shift+Tabでの移動は可能ですが、入力フォーカスはエディタウィンドウに残ったままです。もしかしたら、再生にクセがあるのでは?

2.Alt+Aはどうすればいいのか?編集と置換で移動する場合は、Shift+Tab, Tabで行います。