エラー、バグ、質問 - ページ 1261 1...125412551256125712581259126012611262126312641265126612671268...3185 新しいコメント Vladimir Karputov 2014.12.20 09:29 #12601 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム MetaTrader 4およびMetaTrader 5のAndroid向けモバイルアプリケーションを更新しました。 pav36krs, 2014.12.20 10:21 友達が助けてくれる!!!メタトレーダーをダウンロードしたのですが、64bitのWindowsで32bitで起動しません。 アルファフォレックスからメタトレーダーをインストールする前にこのような問題に遭遇したのは初めてで、すべて問題なく動作していました。 Alexander 2014.12.22 06:19 #12602 barabashkakvn: https://www.metatrader5.com/ru/terminal/help/start_advanced/installation Alexey Navoykov 2014.12.23 17:45 #12603 ビット演算のエラー。Print(int(1)<<34);MTを何年も磨いてきて、まだこんな失態があるのか。 Vladimir Gospodinov 2014.12.23 18:43 #12604 コンパイラは、このオフセットに悪態をつかなかったのか?そうでしょうか。とにかく、それが私たちの望みでした。00000000000000000000000000000001 << 34 00000000000000000000000000000100 Alexey Navoykov 2014.12.23 20:21 #12605 GVladimir:コンパイラは、このオフセットに悪態をつかなかったのか?そうでしょうか。とにかく、それが私たちの望みでした。 あなたは明らかにビットシフトの仕組みをよく知らない。 そこでは低次のビットでは何も起こりえない。 疑問があれば、C++があなたの助けになる。 Vladimir Gospodinov 2014.12.23 21:15 #12606 meat: そこでは、低次のビットでは何も起こり得ない。MQLでは、すべてのビットシフトは巡回型(ROL/ROR)として実装されていると思います。(CにもC++にもないので、おそらくあなたは知らないでしょう)このような状況のためです。 Alexey Navoykov 2014.12.23 22:16 #12607 GVladimir:MQLでは、すべてのビットシフトは巡回シフト(ROL/ROR)として実装されていると思います(CにもC++にもないので、おそらくご存じないでしょう)このような状況のためにMQLのドキュメントには周期的なシフトについて何も書かれていないので、通常のシフトを想定しています。しかし、そこに次のようなフレーズがあるのを発見しました。シフトされる変数のビット数より多いか同数のビットをシフトすることは、この操作の結果が不定であるため、推奨されません。これは誤りです。ビット演算で未定義の結果はありえない。出発ビットが特別なフラグに格納されるか、格納されないかだけで、シフトアルゴリズムには何の影響もありません、つまり、右ビットはとにかくゼロで埋められます。 周期シフトであれば、これを明示する必要があります(通常のC++互換シフトの方が正しいのですが...)。 Alexandr Bryzgalov 2014.12.23 23:11 #12608 は、旧ビルドでコンパイルしたインディケータをリソースとして他のインディケータに接続することは可能でしょうか?このままではうまくいかない。........ #resource "\\Indicators\\тфьу.ex4"........ int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) {........ ExtLimeBuffer[i]=iCustom(_Symbol,0,"::Indicators\\тьфу.ex4",pr1,pr2,pr3,pr4,pr5,pr6,pr7,2,i);........ return(rates_total);} は、コンパイラがこう言っている。unknown resource type 'C:\Program Files\MT4\MQL4\Indicators\тфьу.ex4' тфьу1.mq4 10 1 Errors, bugs, questions MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 初心者の方からの質問 MQL5 MT5 MetaTrader Slava 2014.12.24 07:04 #12609 meat:MQLのドキュメントには周期的なシフトについて何も書かれていないので、通常のシフトを想定しています。ところが、そこにそんなフレーズがあったのです。これは誤りです。ビット演算で未定義の結果はありえない。出発ビットが特別なフラグに格納されるか、格納されないかだけで、シフトアルゴリズムには影響しない、つまり右ビットはとにかくゼロで埋められる。 循環シフトなら明示的に指定する必要がある(plain++互換シフトならもっと正しいが)。そうかもしれませんね。32 ビット整数の場合は最大 5 ビット(64 ビット整数の場合は最大 6 ビット) がシフト操作に関与している必要がある。シフト値が5ビット(または6ビット)以上必要な場合、プロセッサによってその扱いが異なります。ドキュメントでは、操作の結果が 未定義であることを示すことで、この事実を反映させただけです。 Документация по MQL5: Торговые функции / OrderCalcProfit www.mql5.com Торговые функции / OrderCalcProfit - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Dmitriy Parfenovich 2014.12.24 07:06 #12610 sanyooooook:... と書くと、コンパイラはこのように書きます。unknown resource type 'C:\Program Files\MT4\MQL4\Indicators\тфьу.ex4' тфьу1.mq4 10 1 どうやらコンパイラは見た目より賢いようです。tfu1.mq4 のソースコードを見つけて、それをリソースとして添付したいのです。 1...125412551256125712581259126012611262126312641265126612671268...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
MetaTrader 4およびMetaTrader 5のAndroid向けモバイルアプリケーションを更新しました。
pav36krs, 2014.12.20 10:21
友達が助けてくれる!!!メタトレーダーをダウンロードしたのですが、64bitのWindowsで32bitで起動しません。 アルファフォレックスからメタトレーダーをインストールする前にこのような問題に遭遇したのは初めてで、すべて問題なく動作していました。ビット演算のエラー。
MTを何年も磨いてきて、まだこんな失態があるのか。
コンパイラは、このオフセットに悪態をつかなかったのか?そうでしょうか。
とにかく、それが私たちの望みでした。
コンパイラは、このオフセットに悪態をつかなかったのか?そうでしょうか。
とにかく、それが私たちの望みでした。
そこでは、低次のビットでは何も起こり得ない。
MQLのドキュメントには周期的なシフトについて何も書かれていないので、通常のシフトを想定しています。しかし、そこに次のようなフレーズがあるのを発見しました。
シフトされる変数のビット数より多いか同数のビットをシフトすることは、この操作の結果が不定であるため、推奨されません。
これは誤りです。ビット演算で未定義の結果はありえない。出発ビットが特別なフラグに格納されるか、格納されないかだけで、シフトアルゴリズムには何の影響もありません、つまり、右ビットはとにかくゼロで埋められます。 周期シフトであれば、これを明示する必要があります(通常のC++互換シフトの方が正しいのですが...)。
は、旧ビルドでコンパイルしたインディケータをリソースとして他のインディケータに接続することは可能でしょうか?
このままではうまくいかない。
........
#resource "\\Indicators\\тфьу.ex4"
........
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
........
ExtLimeBuffer[i]=iCustom(_Symbol,0,"::Indicators\\тьфу.ex4",pr1,pr2,pr3,pr4,pr5,pr6,pr7,2,i);
........
return(rates_total);
}
は、コンパイラがこう言っている。
unknown resource type 'C:\Program Files\MT4\MQL4\Indicators\тфьу.ex4' тфьу1.mq4 10 1
MQLのドキュメントには周期的なシフトについて何も書かれていないので、通常のシフトを想定しています。ところが、そこにそんなフレーズがあったのです。
これは誤りです。ビット演算で未定義の結果はありえない。出発ビットが特別なフラグに格納されるか、格納されないかだけで、シフトアルゴリズムには影響しない、つまり右ビットはとにかくゼロで埋められる。 循環シフトなら明示的に指定する必要がある(plain++互換シフトならもっと正しいが)。
そうかもしれませんね。
32 ビット整数の場合は最大 5 ビット(64 ビット整数の場合は最大 6 ビット) がシフト操作に関与している必要がある。シフト値が5ビット(または6ビット)以上必要な場合、プロセッサによってその扱いが異なります。ドキュメントでは、操作の結果が 未定義であることを示すことで、この事実を反映させただけです。
...
と書くと、コンパイラはこのように書きます。
unknown resource type 'C:\Program Files\MT4\MQL4\Indicators\тфьу.ex4' тфьу1.mq4 10 1