MQL4ドキュメントに関するディスカッション - ページ 17 1...1011121314151617181920 新しいコメント Rashid Umarov 2007.03.20 16:01 #161 Yurixx: Rosh さん、私があなたの沈黙を正しく理解するならば、どのようなケースで、どのような式や変数の正規化が必要なのか、明確なステートメントがありません。もしそうなら、もっと簡単な質問に答えることができるかもしれない。 int StLs=25; double prc = Ask + StLs*Point; それとも、自分で実験して見つけた方がいいのでしょうか? まさか、私の答えを待っていたとは思いませんでした。私の答えは、「このような場合は正規化を行わず、注文は正常に開く」です。しかし、手動で作った履歴を読み込んでテスターを走らせようとしたときがあったのですが、そのときは驚きましたね。ほとんどすべての場合において、正規化は念のため使用すべきです。OrderSend()の価格パラメータに挿入される自作の指標値(例えば、あらゆる種類のPivots)であれ、EA内部の複雑な計算(そして複雑ではないもの)であれ、すべての場合において、バターで何かを台無しにすることはできないのです。 しかし、OrderSend()で価格正規化を行うことが絶対に必要でない場合、明確な定式化ができないのが実情です。原則、夜型人間なら半年で感覚をつかむが、そんなことをしなくても、常に正常化できる。 Rashid Umarov 2007.03.21 09:23 #162 また、今日ヘルパーをチェックしていたら、Data Conversions: 、あるフォーマットのデータから別のフォーマットのデータへの変換を行う関数群が見つかりました。 特に、NormalizeDouble() 関数は、価格表現の精度を保証するもので、取引サーバーが要求する精度を1桁 以上上回るような非正規化価格を取引操作で使用することはできません。 Rashid Umarov 2007.03.21 09:29 #163 また、NormalizeDouble double NormalizeDouble() 倍精度、整数値) 浮動小数点数を指定された精度で丸める。 計算された StopLossとTakeProfitの値、および保留中の注文の開始 価格は、事前に定義された変数Digitsに 格納されている精度に正規化する必要があります。 パラメータ 価値 - 浮動小数点数での値。 すうじ - 精度形式,小数点以下の桁数(0~8)。 例 double var1=0.123456789; Print(DoubleToStr(NormalizeDouble(var1,5),5)); // 出力:0.12346 削除済み 2007.03.21 10:15 #164 "例 double var1=0.123456789; Print(DoubleToStr(NormalizeDouble(var1,5),5)); // 出力:0.12346". これらは、ドキュメントで見てみたい例です。すべてがシンプルでわかりやすい。Expert Advisorやインジケータに挿入して、すぐに結果を見ることができます。 Rashid Umarov 2007.03.21 10:29 #165 こんな感じか? Sceptic Philozoff 2007.03.21 16:17 #166 Rosh さん、同フォーラムの16ページをご覧ください。すでにこの機能とそれに対するヘルプの改善案について書いています。 Rashid Umarov 2007.03.21 16:22 #167 とりあえず修正しました(新ビルドで対応予定)。 double NormalizeDouble() 倍精度、整数値) 浮動小数点数を指定された精度で丸める。 計算されたStopLossとTakeProfitの値、および保留中の注文の建値は、あらかじめ定義された変数Digitsに 格納されている精度に正規化される必要があります。 パラメータ 価値 - 浮動小数点数での値。 すうじ - 精度形式,小数点以下の桁数(0~8)。 例 double var1=0.123456789; Print(DoubleToStr(NormalizeDouble(var1,5),8)); // 出力:0.12346000 この例では、NormalizeDouble()で5桁にクリッピングし、Print()で単純に描画しています(ロシア語でなくてすみません)。 Sceptic Philozoff 2007.03.21 16:30 #168 そうですね、文字数が異なるようになった途端に、この例はかなり情報量が増えましたね。 Alexandre 2007.03.21 17:25 #169 bool SendFTP() 文字列 filename, 文字列 ftp_path=NULL) Publishウィンドウで指定したEメールアドレスにファイルを送信します。失敗した場合は FALSE を返す。 テストモードでは、この機能は動作しません。また、この関数はカスタムインジケータから呼び出すことはできません。 送信するファイルは、terminal_directoryのtexperts フォルダまたはそのサブフォルダに配置されている必要があります。 FTPアドレスやアクセスパスワードが設定されていない場合は、送信されません。 [...] void SendMail() 文字列 subject, 文字列 some_text) メール]タブの設定で指定したアドレスにメールを送信します。 設定で送信を禁止している場合や、メールアドレスが指定されていない場合があります。エラー情報を取得するためには、GetLastError() 関数を呼び出す必要があります。 [...] 観察課題:2つの違いを見つけよう。 Rashid Umarov 2007.03.21 17:32 #170 どうやら、あきらめないといけないから、後ろから正解を捨てられるのか?:) 1...1011121314151617181920 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
Rosh さん、私があなたの沈黙を正しく理解するならば、どのようなケースで、どのような式や変数の正規化が必要なのか、明確なステートメントがありません。もしそうなら、もっと簡単な質問に答えることができるかもしれない。
int StLs=25;
double prc = Ask + StLs*Point;
それとも、自分で実験して見つけた方がいいのでしょうか?
しかし、OrderSend()で価格正規化を行うことが絶対に必要でない場合、明確な定式化ができないのが実情です。原則、夜型人間なら半年で感覚をつかむが、そんなことをしなくても、常に正常化できる。
、あるフォーマットのデータから別のフォーマットのデータへの変換を行う関数群が見つかりました。
特に、NormalizeDouble() 関数は、価格表現の精度を保証するもので、取引サーバーが要求する精度を1桁 以上上回るような非正規化価格を取引操作で使用することはできません。
計算された StopLossとTakeProfitの値、および保留中の注文の開始 価格は、事前に定義された変数Digitsに 格納されている精度に正規化する必要があります。
Rosh さん、同フォーラムの16ページをご覧ください。すでにこの機能とそれに対するヘルプの改善案について書いています。
計算されたStopLossとTakeProfitの値、および保留中の注文の建値は、あらかじめ定義された変数Digitsに 格納されている精度に正規化される必要があります。
この例では、NormalizeDouble()で5桁にクリッピングし、Print()で単純に描画しています(ロシア語でなくてすみません)。
そうですね、文字数が異なるようになった途端に、この例はかなり情報量が増えましたね。
テストモードでは、この機能は動作しません。また、この関数はカスタムインジケータから呼び出すことはできません。
送信するファイルは、terminal_directoryのtexperts フォルダまたはそのサブフォルダに配置されている必要があります。
FTPアドレスやアクセスパスワードが設定されていない場合は、送信されません。
[...]
設定で送信を禁止している場合や、メールアドレスが指定されていない場合があります。エラー情報を取得するためには、GetLastError() 関数を呼び出す必要があります。
[...]
観察課題:2つの違いを見つけよう。