for(inti=calc_bars-1;i>=0;i--)// peaks loop//i=199
{
double pips_lh=0,pips_hl=0;
int y=i,c=1;
bool wcond=true;
while(wcond && y>=0 && c>=0 && !IsStopped())
{
int hm=ArrayMaximum(h,i,c);//от 199int lm=ArrayMinimum(l,i,c);
Comment(hm+" "+lm);
double max_high=h[hm],min_low=l[lm];
//Comment(max_high+" "+min_low);if(fabs(max_high-min_low)>min_pips)
{
HighestBuffer[hm]=h[hm];
LowestBuffer[lm]=l[lm];
}
c++;// if h-l<min pips => add next bar
y--;// new i
}
i=y;//цикл for где-та тут и заканчивается, т.е. выполняется 1 раз, когда i=199.
}
MT5はデスクトップパソコンでは動くのですが、ノートパソコンでは動きません。MT5の最初のリリースから新しいデモ口座を開設したり、別のコンピュータで作成したデモ口座に接続したりすることができません...。どちらのパソコンもWindows XP Pro SP3で、インターネット接続も同じ、アンチウイルスとファイアウォールを無効にしてもダメです...。もしかしたら、インストールが必要な必須コンポーネントがあるのでは?
シンボルと期間はチャートと同じである必要はなく、他のタイムフレームやシンボルからでも可能です。
この質問にはちょっと驚きました(だからわからないんです)iCustom()の記述にあります。
PS 計算されたインジケータのデータの取得はCopyBuffer()関数で 行い、そのハンドルとバッファ番号を指定する必要があります(説明はマニュアルにあります)。
PPS iCustomがインジケータ計算フローを開始し、CopyBufferがインジケータデータを受信します。
だからなんだ
は、このインジケータを特定の通貨に投げる義務があるのでしょうか?
とにかく、気にせず、行ってみてください。
個人的には、すべてがうまくいっています。Expert Advisorから呼び出したり、チャートに投げたりもしています。
コメント(114行目)で、"c"(第3パラメータArrayMaximum/minimum)が常に増加しているにもかかわらず、ArrayMaximumとArrayMinimumが常に199を示すのは理解できないのですが......。
110行目の場合。
に置き換えます。
...そこにいくつかの漫画が始まる...
一般的に、インジケータだけでなく、多くの組み込みループ(ArrayMaximumの暗黙のものも含む)が、毎ティック ごとにターミナルをハングアップさせているのではないかと思います。ただし、Commentが極値の結果ではなく、何らかの変数cを出力すれば、whileの場合でもハングアップすることはない。
それに、ヘルプを見てください。
ここでは、カウントが0から200まで増加する間、スタートは常に=199であり、それゆえ、すべての結果が得られる。例えば、iとcが入れ替わったときに動き出す。
でマイナスになり、terminal error: array out of rangeとなる。コメント(114行目)で、"c"(第3パラメータArrayMaximum/minimum)が常に増加しているにもかかわらず、ArrayMaximumとArrayMinimumが常に199を示すのは理解できないのですが.........。
2台目のパソコンでMT5が動かないのです。OSやプロバイダを変えてみましたが、まるで悪縁でパソコンに端末が表示されないようです。
MT5はデスクトップパソコンでは動くのですが、ノートパソコンでは動きません。MT5の最初のリリースから新しいデモ口座を開設したり、別のコンピュータで作成したデモ口座に接続したりすることができません...。どちらのパソコンもWindows XP Pro SP3で、インターネット接続も同じ、アンチウイルスとファイアウォールを無効にしてもダメです...。もしかしたら、インストールが必要な必須コンポーネントがあるのでは?
99.9%はノートパソコンと一緒なので...。
不運とは何か、その対処法とは?
上にも書きましたが(2010.01.11 14:03 投稿)、私のノートパソコンでは、MT5は最初から最後まで頑として動こうとしませんでした...。最近、ノートパソコンが壊れてしまい、マルチコアチップなどの新しいものを手に入れました。過去2年間やってきたようにVPSからではなく、ローカルでMT5を使えるようにしたいと思っていましたが、MT5をインストールすると、プロキシプロンプトが出て、どうにもなりません.........。MT5はインストールしなくても動くはずと思い出し、VPSからMT5のディレクトリをコピーして動かしてみたところ...。問題なく動作しているが、すぐに以前のようにクラッシュしてしまう...。なんだ、コブクロはブーツがないわけじゃないのに、地球の裏側にあるUPUからの写真にしかブーツが写ってないじゃないか...。何ができるのか?
2台目のパソコンでMT5が動かないのですが、OSやプロバイダを変えてみましたが、まるで魔が差したかのように、パソコンに端末が表示されないのですが、誰に連絡すればいいか教えてください。
こんにちは!標準ライブラリ MovingAverages.mqhです。
SimpleMA関数は配列全体の平均値を取得できないことが判明!?100個の要素を持つprice[]配列があるとする。その平均値を求めたい。関数に渡しています。
SimpleMA(99, 100, 価格);
99<100なので、0になります。コード内でハイライトされている)ピリオドを(ピリオド-1)に修正することを妨げるものは何ですか?
CHART_EVENT_MOUSE_DOWN イベントと CHART_EVENT_MOUSE_UP イベントは導入されますか?
これがないと、本格的なドラッグ&ドロップができないのです。
開発者に質問です。新しいビルドの機能には、CHART_EVENT_MOUSE_MOVE イベントが含まれます。
CHART_EVENT_MOUSE_DOWN と CHART_EVENT_MOUSE_UP イベントは追加されますか?
それがなければ、ドラッグ&ドロップは本格的なソリューションとは言えません。
この要望を支持します。
ここで、関数GetCursorPos + GetKeyStateを使用する必要があります。
EVENT_MOUSE_MOVEの出現でGetCursorPosが不要になり、MOUSE_DOWNとMOUSE_UPでGetKeyStateも不要になります。
MQL5のプログラムでは、まずインタラクティブ性を高め、ユーザーのアクションに対する応答性を向上させます。第二に、DLLを使用しなくなるため、マーケットプレイスで販売できるようになることです。
サービスデスクにリクエストしてください(この投稿の表示で可能)。新しいビルドをリリースする頃には、きっと追加する時間があるはずです。実装は難しくありません。
特に、コントロールの標準ライブラリの 開発が進んでいるので、すでに開発者の関心事になっているのでしょう。
PS.
会社自体がコントロールのライブラリを作ろうと決めて、これらの機能を与えることが単純に必要だと気づいた(出会った)ことは、とてもうれしいことです。
今後も機能や使い勝手の向上が続くことを期待します。