MQL4およびMQL5でDigits()をバイパスして任意の数値(引用符だけでなく)の小数点以下桁数を取得 - ページ 19

 
ありがとうございます、明日テストしてみます。
 
素晴らしい!mql5ではArraySort関数からソート方向が削除され、mql4からの移行に関する記事では、代わりにArraySetAsSeriesを使用するようにアドバイス されています...。しかし、多次元配列ではうまくいきません =)))昨日、何もしていない状態からArraySortをモデリングしました)))
 
Dmitry Fedoseev:

私は文字列への変換オプションを選択しました。

オプションに少し手を加えました

int ds(double v){
   string s=(string)v;
   int l=StringLen(s);
   int p=StringFind(s,".",0);
   return((p>0)?l-p-1:0);
}
 
Igor Makanu:

ありがとうございます、手に入れました、明日テストしてみます。

重要な説明を忘れていました :)

#define    test(M,S,EX)        {uint mss=GetTickCount();int nn=(int)pow(10,M);for(int tst=0;tst<nn&&!_StopFlag;tst++){EX;} \
                                printf("%s: loops=%i ms=%u",S,nn,GetTickCount()-mss);}

そうでなければ、失敗したときに長い間ぶら下がることができます)

タラス・スロボジャニク

あなたのバージョンに少し手を加えました。

優れたオプションですが、以下の既提案のものより10倍遅く動作します。

 
fxsaber:

構造体の配列(長さが sizeof(int) の倍数)と int[] 配列との間の変換を高速に行う実装について、ブレインストーミングを行うことができますか?

実用的な用途としては、リソースを介した高速なデータ交換が挙げられます。私のバリアントは 普遍的すぎるから遅くなるんだ。


MT5で登場した機能

MT4には存在しませんし、おそらく今後も存在しないでしょう。だから、これらの機能がある場合とない場合(役に立つ場合)で問題を解決しなければならない。

この結果は、ここのフォーラムの多くのユーザーにとって有益なものとなることでしょう。


この問題に対する私の解決策で、ブレインストーミングのための非常にシンプルなテンプレートを書きました。


結果

構造体は文字列である。長さがintの倍数であること、またはintでないことはできません。

 
Ilya Malev:
mql5ではArraySort関数からソート方向が削除され、mql4からの移行記事では代わりにArraySetAsSeriesを使うことが推奨 されているようですが...。しかし、多次元配列ではうまくいきません =)))昨日、何もしていない状態からArraySortをモデリングしました)))

記事一覧

MQL5におけるソートメソッドとそのビジュアル化

ドミトリー・トロシン, 2017.05.26 09:44

MQL5でグラフィックを扱うための特別なライブラリGraphic.mqhが作成されました。本稿では、その実用化の一例を紹介するとともに、マーシャリングの本質を解説します。それぞれの分類については、少なくとも別の論文があり、いくつかのものについては全体の研究が発表されているので、ここでは一般的な考え方のみを説明する。

 
Andrey Khatimlianskii:

ランダムサンプリングでの通常の組み込みArraySortとの ソート速度の比較はありますか? ランダムなデータを平均して速くソートする方法はありますか?

あるいは速くはないが、少なくとも同じである。あるいは速くはないが、少なくとも2倍以上の長さはない。マルチスレッドのようなDllや他のものを使用せずに
 
Алексей Тарабанов:

構造体は文字列である。長さがintの倍数であること、またはintでないことはできません。

多重性は問題の条件である。

 
乗り越えられないんです。
パソコンに向かったら、必ず参加します。
ざっと見ただけで、どうすれば10〜20%仕上がりが良くなるのか、すでにアイデアが浮かんでいます。

 
Nikolai Semko:
乗り越えられないんです。
パソコンに向かったら、必ず参加します。
すでに、10~20%程度、結果を改善するためのアイデアがあります。

その結果とは?