mql5言語の特徴、微妙なニュアンスとテクニック - ページ 132 1...125126127128129130131132133134135136137138139...247 新しいコメント Nikolai Semko 2019.04.03 03:10 #1311 Igor Makanu:インジケータのクラス計算をラップする - バッファをクラスフィールドにバインドする残念... うまくいかなかった。クラスとハンドルの内部にバッファがあっても、作成された内部中間計算バッファは、クラスインスタンスが削除されても、すべてRAMに残ります。 TFを変更しないとメモリはクリアされません。 ハンドルによるメモリクリーニングのコマンドは明らかに不足しています。例えば、MemErase( int handle) です。 Igor Makanu 2019.04.03 05:30 #1312 Nikolai Semko:残念... うまくいかなかった。クラスとハンドルの内部にバッファがあっても、作成された内部中間計算バッファは、クラスインスタンスが削除されても、すべてRAMに残ります。TFを変更しないとメモリはクリアされません。明らかに不足しているのは、ハンドルでメモリをクリアすることを目的としたコマンドです。例えば、MemErase( int handle) です。1. オブジェクトポインタとオブジェクトインスタンス(※のこと)の組み合わせを確認しましたか? 2.デストラクタを書き、その中で配列のサイズを 削除しましたか?(ArrayFree()とArrayResize(arr,0,0) ) Alexey Viktorov 2019.04.03 06:15 #1313 Nikolai Semko:残念... うまくいかなかった。クラスとハンドルの内部にバッファがあっても、作成された内部中間計算バッファは、クラスインスタンスが削除されても、すべてRAMに残ります。TFを変更しないとメモリはクリアされません。明らかに不足しているのは、ハンドルでメモリをクリアすることを目的としたコマンドです。例えば、MemErase( int handle) です。そしてIndicatorReleaseは使わなかったのですか? しかし、それでも私は空手形だと思うのです。何のために必要なのですか?アニメーションを描くため?トレーディングには?Moving Averageを 直線になるまで平均化すること? Andrey Khatimlianskii 2019.04.03 19:11 #1314 Nikolai Semko:残念... うまくいかなかった。クラスやハンドルの内部にバッファがあっても、作成された内部中間計算バッファは、クラスインスタンスが削除されても、すべてRAMに残ります。 TFを変更しないとメモリはクリアされません。 明らかにハンドルでメモリをクリアするコマンドが抜けています。例えば、MemErase( int handle) です。端末は、プログラムが使用しない場合でも、しばらくの間キャッシュを保存します。 メモリが解放されるまでの時間をキャッチすることができます。 Nikolai Semko 2019.04.03 20:33 #1315 Alexey Viktorov:IndicatorReleaseを使用したことがありますか? それにしても、もったいないと思います。教えてください、何のために必要なのですか?アニメを描くため?トレーディングには?Moving Averageを直線になるまで平均化すること?はい、ありがとうございます、アレクセイ。この機能を忘れていました。以前見たことがあるが、使ったことはない。 試してみました。何かが間違っている。削除されるのですが、削除した後、すべてが止まってしまうのです。 インジケーターの計算 前のDrawSetup()関数に、以下のパラメータで1行だけコードを追加しただけです。 IndicatorRelease(handle); handle=iMA(_Symbol,_Period,per1,0,MaMethod,PriceBase); for(int i=0;i<N;i++) handle=iMA(_Symbol,_Period,per2,0,MaMethod,handle); インジケーターが単に動かなくなっただけで、原因はまだ分かりません。 アレクセイ・ヴィクトロフ無駄な考えだと思います。何のために必要なのか?アニメを描くため?トレーディングには?Moving Averageを直線になるまで平均化すること?まったくもって同感です。ただの無駄なオモチャです。 Nikolai Semko 2019.04.03 20:33 #1316 Andrey Khatimlianskii:端末は、プログラムがキャッシュを使用しなくても、しばらくの間、キャッシュを保持します。 メモリが解放されるまでの時間を計ることができます。6分待っても何もクリアされない。 Nikolai Semko 2019.04.03 20:41 #1317 Igor Makanu:1.オブジェクトポインタとオブジェクトインスタンス(※のことです)の組み合わせを確認しましたか? 2.デストラクタを書き、その中で配列のサイズを削除しましたか?(ArrayFree()とArrayResize(arr,0,0) )1.はい、ポインタ、新規作成、削除でやりました。 2.だから、アレイはない。つまり、内部配列はあるが、名前がない。ハンドル番号のみです。 そして、forループの繰り返しごとに、handle変数の値が1つずつ増えていく。つまり、内部バッファは乗算され、前のバッファはすべて次のバッファの計算に参加します。 ロジック上、IndicatorRelease(handle);を行ってから、再度全く新しい計算を行うべきですが、すでに上で 書いたように、それではインジケータが死んでしまいます。理由は定かではありません。 Alexey Viktorov 2019.04.03 21:17 #1318 Nikolai Semko:はい、ありがとうございます、アレクセイ。その機能を忘れていました。以前見たことがあるが、使ったことはない。 試してみました。何かが間違っている。削除したら削除したで、削除した後は全部止まってしまう。 インジケーターの計算 前のDrawSetup()関数に、以下のパラメータで1行だけコードを追加しただけです。 インジケーターが単に動かなくなっただけで、原因はまだ分かりません。 まったくもって同感です。ただの無駄なオモチャです。そういうことではないんです。チャートエニュメレーターのように、いくつかのハンドラーを作るべきだと思います currChart=ChartNext(prevChart); // на основании предыдущего получим новый график そして、新しいHandleを手に入れたら、使用済みのHandleは、使用済みHandleと同じように捨てることができます ... Nikolai Semko 2019.04.03 21:29 #1319 Alexey Viktorov:そういうことではないんです。グラフサーチのように、2、3回手打ちをする必要があると思います そして、新しいハンドルを手に入れたら、使用済みのものは使用済みのものと同じように捨てることができる・・・。というのは通用しない。 Alexey Viktorov 2019.04.03 21:36 #1320 Nikolai Semko:まさか なぜダメなのか? 1...125126127128129130131132133134135136137138139...247 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
インジケータのクラス計算をラップする - バッファをクラスフィールドにバインドする
残念...
うまくいかなかった。クラスとハンドルの内部にバッファがあっても、作成された内部中間計算バッファは、クラスインスタンスが削除されても、すべてRAMに残ります。
TFを変更しないとメモリはクリアされません。
ハンドルによるメモリクリーニングのコマンドは明らかに不足しています。例えば、MemErase( int handle) です。
残念...
うまくいかなかった。クラスとハンドルの内部にバッファがあっても、作成された内部中間計算バッファは、クラスインスタンスが削除されても、すべてRAMに残ります。
TFを変更しないとメモリはクリアされません。
明らかに不足しているのは、ハンドルでメモリをクリアすることを目的としたコマンドです。例えば、MemErase( int handle) です。
1. オブジェクトポインタとオブジェクトインスタンス(※のこと)の組み合わせを確認しましたか?
2.デストラクタを書き、その中で配列のサイズを 削除しましたか?(ArrayFree()とArrayResize(arr,0,0) )
残念...
うまくいかなかった。クラスとハンドルの内部にバッファがあっても、作成された内部中間計算バッファは、クラスインスタンスが削除されても、すべてRAMに残ります。
TFを変更しないとメモリはクリアされません。
明らかに不足しているのは、ハンドルでメモリをクリアすることを目的としたコマンドです。例えば、MemErase( int handle) です。
そしてIndicatorReleaseは使わなかったのですか?
しかし、それでも私は空手形だと思うのです。何のために必要なのですか?アニメーションを描くため?トレーディングには?Moving Averageを 直線になるまで平均化すること?
残念...
うまくいかなかった。クラスやハンドルの内部にバッファがあっても、作成された内部中間計算バッファは、クラスインスタンスが削除されても、すべてRAMに残ります。
TFを変更しないとメモリはクリアされません。
明らかにハンドルでメモリをクリアするコマンドが抜けています。例えば、MemErase( int handle) です。
端末は、プログラムが使用しない場合でも、しばらくの間キャッシュを保存します。
メモリが解放されるまでの時間をキャッチすることができます。
IndicatorReleaseを使用したことがありますか?
それにしても、もったいないと思います。教えてください、何のために必要なのですか?アニメを描くため?トレーディングには?Moving Averageを直線になるまで平均化すること?
はい、ありがとうございます、アレクセイ。この機能を忘れていました。以前見たことがあるが、使ったことはない。
試してみました。何かが間違っている。削除されるのですが、削除した後、すべてが止まってしまうのです。
インジケーターの計算 前のDrawSetup()関数に、以下のパラメータで1行だけコードを追加しただけです。
インジケーターが単に動かなくなっただけで、原因はまだ分かりません。
無駄な考えだと思います。何のために必要なのか?アニメを描くため?トレーディングには?Moving Averageを直線になるまで平均化すること?
まったくもって同感です。ただの無駄なオモチャです。
端末は、プログラムがキャッシュを使用しなくても、しばらくの間、キャッシュを保持します。
メモリが解放されるまでの時間を計ることができます。
6分待っても何もクリアされない。
1.オブジェクトポインタとオブジェクトインスタンス(※のことです)の組み合わせを確認しましたか?
2.デストラクタを書き、その中で配列のサイズを削除しましたか?(ArrayFree()とArrayResize(arr,0,0) )
1.はい、ポインタ、新規作成、削除でやりました。
2.だから、アレイはない。つまり、内部配列はあるが、名前がない。ハンドル番号のみです。
そして、forループの繰り返しごとに、handle変数の値が1つずつ増えていく。つまり、内部バッファは乗算され、前のバッファはすべて次のバッファの計算に参加します。
ロジック上、IndicatorRelease(handle);を行ってから、再度全く新しい計算を行うべきですが、すでに上で 書いたように、それではインジケータが死んでしまいます。理由は定かではありません。
はい、ありがとうございます、アレクセイ。その機能を忘れていました。以前見たことがあるが、使ったことはない。
試してみました。何かが間違っている。削除したら削除したで、削除した後は全部止まってしまう。
インジケーターの計算 前のDrawSetup()関数に、以下のパラメータで1行だけコードを追加しただけです。
インジケーターが単に動かなくなっただけで、原因はまだ分かりません。
まったくもって同感です。ただの無駄なオモチャです。
そういうことではないんです。チャートエニュメレーターのように、いくつかのハンドラーを作るべきだと思います
そして、新しいHandleを手に入れたら、使用済みのHandleは、使用済みHandleと同じように捨てることができます ...
そういうことではないんです。グラフサーチのように、2、3回手打ちをする必要があると思います
そして、新しいハンドルを手に入れたら、使用済みのものは使用済みのものと同じように捨てることができる・・・。
というのは通用しない。
まさか