バーの欠落のないチャートを見たかった人 - ここ =) - ページ 9

 
開発者がオフラインのチャートでEAを動作させることを禁止している理由がわかりました。
オフラインのチャートではBidとAskが0を返すことが関係していると思います。つまり、マーケットでオープンしたいExpert Advisorでは不可能なのです。しかし、私は、保留中の注文でのみ動作する私のEAのための次のソリューションを思いついた:自動置換を使用して_Bid()と_Ask()の入札とアスクを変更します。_MarketInfo() は、取引されている商品のスプレッドを返します。

int _MarketInfo(string symb_for_work)
{
   if(symb_for_work=="USDCHFm") return(4);
   if(symb_for_work=="CHFJPYm") return(5);
   if(symb_for_work=="GBPUSDm") return(3);
   if(symb_for_work=="USDCADm") return(5);
   if(symb_for_work=="USDJPYm") return(3);
   if(symb_for_work=="EURGBPm") return(4);
   if(symb_for_work=="AUDUSDm") return(4);
   if(symb_for_work=="EURCHFm") return(4);
   if(symb_for_work=="EURJPYm") return(5);
   if(symb_for_work=="EURUSDm") return(2);
   if(symb_for_work=="NZDUSDm") return(6);
   if(symb_for_work=="AUDJPYm") return(6);   
 
return(0);
}
 
double _Bid()
{
   return(Close[0]);
}
 
double _Ask()
{
   return(Close[0]+_MarketInfo(symbol_for_trade)*Point);
}
考え方は明快だと思います。修正EAの最初の結果から判断すると、注文は正常に開かれています。今は週末なので、来週の取引開始時に詳しくテストしてみたいと思います。最初に望んだことが実現できそうです。
 
IMHO, nonsense ...
もし開発者が「オフラインのチャートではBidとAskは0を返す」と見ていたら。
なぜ直せないのでしょうか?
 

まあ、オフラインのチャートは更新頻度がかなり低いこともありますからね。また、更新間隔が1~2分の間は、実際のAskとBidがオフラインのチャートに表示されているものとかなりかけ離れてしまうことがあります。また、RefreshRates()は、ここでは全く役に立ちません。まあ、すでに判明していること以外にも、何か理由があったのだろう。しかし、それに答えられるのは開発者だけです。

 
solandr:

まあ、オフラインのチャートは更新頻度がかなり低いこともありますからね。また、更新間隔が1~2分の間は、実際のAskとBidがオフラインのチャートに表示されているものとかなりかけ離れてしまうことがあります。また、RefreshRates()は全く役に立ちません。まあ、すでに判明していること以外にも、何か理由があったのだろう。しかし、それに答えられるのは開発者だけです。

そうですね、チャートが更新されないと、Bidが陳腐化します。
でも、Close[0]もそうでしょう!

取引用Expert Advisorで故意に間違った価格を使用することはできません。
MarketInfo( MODE_BID ) と MarketInfo( MODE_ASK ) を使って、新鮮な価格を取得する )
 

基本的にはClose[0]でかなり満足しています ;o)
急がない。私は次の原則に従ってExpert Advisorの速度をわざと遅くすることさえあります ;o)

1.現在の価格が プロバイダから少なくとも50pips離れている場合、プロバイダの注文を少なくとも10pips動かす必要がある場合にのみ、プロバイダを修正することができます。
2.現在の価格が「Oder」から25~50pipsの範囲内にある場合、Expert Advisorは5pips以上の修正が必要な場合のみ「Oder」を修正することが可能です。
3.現在の価格が注文に25pips以上近づいた場合、Expert Advisorは保留中の注文を2pips以上移動させます。

この方式により、保留中の注文の移動回数を少なくとも5倍、いやそれ以上に減らすことができるのです:o) 平均して1時間あたり0(夜間)から20(ニュースイベント時)の動きで、合計約60の注文待ち(12通貨分)であることが判明!。つまり、1日に200回以上の移動はないでしょうし、毎日でもないでしょう。一般的に、マニュアル取引では、一つのストラテジーに忠実に従い、同じ量の通貨ペアでプレイすれば、より多くの注文を動かすことができると思います。;o)

 

komposter さん、日曜日のデイキャンドルと月曜日のデイキャンドルを融合させるExpert Advisorを開発してくれて、改めて大感謝です!!!
あなたのスクリプトで1ヶ月前から実働しています。19の通貨ペア(すべてInterbankFXで利用可能)を日中バー600本ずつ処理するスクリプトを起動しました。 チャートの更新時間を1分に設定しました。 CPU VIA C3 800 MHzですべて順調に動作しています!

これはエキスパートアドバイザーではなく、ターミナルの機能だと思いますが、個人的には文句なしです!1つ小さな機能に気づきました。Metaeditorで作業しているとき、チャートに接続されていないEAをコンパイルしようとすると、ターミナルがログにエラーを発生させます。また、800MHz、P4 3GHz、Celeron 2GHzのいずれのプロセッサでも安定した性能を発揮します。198を構築する。InterbankFXのアップデートに問題があるため、200では試していません(アップデート要求は表示されるが、ビルドがダウンロードされない-でも問題ない)。
******************************
2006.12.09 03:26:29 WithoutSunday_4:FileFlushの 無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteIntegerの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileSeek の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileFlush の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteIntegerの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileSeek の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileFlush の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteIntegerの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileSeek の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileFlush の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteIntegerの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileSeek の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileFlush の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteIntegerの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileSeek の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileFlush の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteDoubleの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileWriteIntegerの無効なハンドル-1
2006.12.09 03:26:29 29 WithoutSunday_4: FileSeek の無効なハンドル -1
2006.12.09 03:26:29 29 WithoutSunday_4 EURUSDm,Daily: Alert: FileOpenHistory("WS_AUDNZDm1440.hst", FILE_BIN | FILE_WRITE ) - エラー #4102
2006.12.09 03:26:29: FileOpen - 開いたファイルが多すぎます。
2006.12.09 03:26:29 29 WithoutSunday_4 EURUSDm,Daily: Alert: FileOpenHistory("WS_NZDJPYm1440.hst", FILE_BIN | FILE_WRITE ) - エラー #4102
2006.12.09 03:26:29: FileOpen - 開いたファイルが多すぎます。
2006.12.09 03:26:29 29 WithoutSunday_4 EURUSDm,Daily: Alert: FileOpenHistory("WS_AUDCADm1440.hst", FILE_BIN | FILE_WRITE ) - エラー #4102
2006.12.09 03:26:29: FileOpen - 開いたファイルが多すぎます。
2006.12.09 03:26:29:29 WithoutSunday_4 EURUSDm,Daily: Alert: FileOpenHistory("WS_EURCADm1440.hst", FILE_BIN | FILE_WRITE ) - Error #4102
2006.12.09 03:26:29: FileOpen - 開いたファイルが多すぎます。
2006.12.09 03:26:29 29 WithoutSunday_4 EURUSDm,Daily: Alert: FileOpenHistory("WS_EURAUDm1440.hst", FILE_BIN | FILE_WRITE ) - エラー #4102
2006.12.09 03:26:29: FileOpen - 開いたファイルが多すぎます。
2006.12.09 03:26:29 29 WithoutSunday_4 EURUSDm,Daily: Alert: FileOpenHistory("WS_GBPCHFm1440.hst", FILE_BIN | FILE_WRITE ) - エラー #4102
2006.12.09 03:26:29: FileOpen - 開いたファイルが多すぎます。
*****************************

通常は、この現象が発生した後、端末を再起動すれば、24時間正常に動作し続けます。
あくまで情報として書いているのであって、対処しようとは思っていません。開発者の力を借りないとやっていけないと思います。

このたびは、以下のお願いをさせていただきます。このブランチで紹介した線形回帰と放物線回帰の計算を行うExpert Advisorは、このスクリプトで生成された相場に基づいて動作します。回帰計算は、平均化されたバーパラメーター、すなわち(O+H+L+C)/4 の値を基準値としている。しかし、私の長年の観察から判断すると、この(O+H+L+C)÷4で読み取るモデルはなかなかうまくいかないのではないでしょうか。信頼度95%の境目で開いた注文を99.9%の境目でストップしています。しかし、99.9%信頼区間の境界を数pipsだけ超えるケースもあった。同時に、その数は統計データによる許容値よりも多いのですだから、HighとCloseによるモデルをベースに計算すれば、この指値の方が統計的に正確だという前提で、どうしても確認したかったのです。Expert Advisor は mq4 ファイルで 184kB と、非常に大きなサイズです。引用元が参照される場所はたくさんあります。新しいモデルのEAを修正するとなると、かなりの労力が必要なことに加え、かなり複雑な計算アルゴリズムに誤差が生じる可能性が高く、私の考えでは、すでに確立され、確実に機能するものです。

そのため、最後のバージョンのスクリプトでは、受信した日足ローソク足からH12期間の相場を形成するよう、改善をお願いしたいです。
00:00に開くバーH12は、最初の日足バーのO=H=L=C=Lowの値を持つはずです。
12:00に開くH12バーは、O=H=L=C=最初の日足バーの高値となるはずです。
また、Expert Advisorは、00:00のH12バー=最初の日足の高値、12:00のH12バー=最初の日足の安値のように、値を入れ替えることができる必要があります。
リアルタイムのチャート更新の際、エキスパートアドバイザーは現在の日の最後のH12バーを処理なしで、つまり各H12バーのO、H、L、Cの現在の値で通過させる必要があります。
このようなバーの処理は、日足ロウソクが閉じた後、閉じた日の H12 バーに変化がなくなったときにのみ行う必要があります。
既存のスクリプトをこの方法に従って改良していただければ、チャンネルの統計分析という点で、High-Lowモデルのチェックが非常に速くなると思います。比較した結果をここで発表することを約束します。統計的データ処理に興味のある多くの人が読むと面白いと思います。 よろしくお願いします。

 
solandr:

InterbankFXは、アップデートに問題があります(アップデートへの招待は表示されますが、ビルドがダウンロードされません - しかし、それは重要ではありません)。

新しいリアルサーバーからは、本当に更新されないんです。liveupdateのデモサーバーでは、問題なく接続できます。
 

私の方は、まず、Highのみ、Lowのみのチャンネル計算を個別に確認してみます。結果を見ます。もし、異なるサンプルで得られたチャンネルの長さが一致していれば、H12年の期間に新たなスクリプトを作成する必要はないだろう。つまり、チャンネルの上限には Highのデータを、下限にはLowのデータを使用することになります。私のEAでもっと簡単に解決できることなら、私の要望であなたを悩ませても無駄なのかもしれませんね。私のExpert Advisorに実装するのは難しくないと思っています。

 
komposter ここで問題が発生したのですが、どうすればいいか教えてください。 詳細はすべてこちらhttp://forum.kimiv.ru/viewtopic.php?t=177 です。
 
solandr:

一つ小さなことに気づきましたが、これはEAではなく端末の機能だと思いますが、個人的には文句なしですExpert Advisorが動作している状態で、どのチャートにも張り付いていないMetaeditorで任意のEAをコンパイルすると、ターミナルログにエラーが表示されます。

長い間、返信できなくてごめんなさい。

問題は、EAが開いているファイルを閉じないことだと思われます。問題は、なぜそうしないかだ =)。
唯一の前提は、コンパイル時に、動作中のEAの起動機能を強制的に停止させることです。

そして、次の「起動」では、ファイルは再び開かれますが、「十分な空き容量がありません」(開いているファイルは 最大32個)。

Expert Advisor 自体はこの状況を正しく処理しません。ファイルが開かれていない場合でも、そこにデータを書き込もうとします。
修正しました - 1行追加 =)
if ( HistoryHandle[curChart] < 0 ) continue;


Expert Advisorを添付しました。



H12チャートについて。"Got time but no money "は私のことではありません =)。
しかし、この2つの価値観は、自由な時間が多ければ多いほど、お金は少なくなり、その逆もまた然りです。

今は仕事が多すぎて、チャリティーはできません。
しかも、フォーラムは5ページ(※30トピック)未読...。
ファイル: