MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1021

 
kashi_ann:

こんばんは。


どこかの記事で、「テスト用」EAの全コードが書かれている/解読されているのを見つけた。保存するのを忘れてしまい、見つからない。 もしかしたら、どなたかご存知の方、この記事をご覧になった方はいらっしゃいますか?

ほぼ全ての記事にテスト用EAコードが掲載されています。あなたが何を求めているのか、誰にもわかるはずがない。

 
ToNy_Nazarov:

アフタヌーン!
MT4用のEAで、小数点以下5桁の価格を扱うことは可能でしょうか?その場合、どのようにすればよいのでしょうか?フォレックス・クラブを介して活動しています。

Digits関数は"5 "を返しますが、Bid価格は "1.10943 "ではなく、"1.1094"、すなわち5番目の記号がないものを返します。
フルプライスを小数点以下5桁で動作させるにはどうしたらよいですか?

また、Point関数は0.00001ではなく、0を出力します。なぜこのような現象が起こるのか、また正しい値を得るにはどうしたらよいのか。

もちろん、できますよ。デフォルトでは

コードがない、答えがない。

 
数字から一桁の数字を取り出すにはどうしたらいいですか?1.2568という数字があるとします。最後の桁「8」を取り出すにはどうすればよいのでしょうか?DoubleToStr()で文字 列に変換し、StringSubstr() で最後の数字を取り出し、intに変換すればよいのです。他に選択肢は?
 
Yevhenii Levchenko:
数字から一桁の数字を取り出すにはどうしたらいいですか? 1.2568という数字があるとします。最後の数字「8」を取り出すにはどうすればよいのでしょうか?DoubleToStr()で文字 列に変換し、StringSubstr()で最後の数字を取り出し、intに変換すればよいのです。 他に選択肢は?

他の選択肢は必ずある。

正規化された値であれば、10000倍するか、この場合は0.0001で割って整数12568とし、10で割った余りを 取る必要があります。

12568%10=8

 
Alexey Viktorov:

他の選択肢は必ずある。

正規化された値であれば、10000倍するか、この場合は0.0001で割って整数12568とし、10で割った余りを 取る必要があります。

12568%10=8

素晴らしいオプションですビクターさん、ありがとうございました。
 
Yevhenii Levchenko:
素晴らしいオプションですビクターさん、ありがとうございました。

若いころの私の名前はアレクセイでした。でも、私はVictorも好きです:)))

 
Artyom Trishkin:

もちろん、できますよ。デフォルトでは

コードがない、答えがない。


//--------------------------------------------------------------------
int start()
{
コメント("Bid = ", Bid,
"\nAsk = ", Ask,
"\nPoint = ", _Point,
"\nDigits = ", Digits);
return(0)です。
}
//--------------------------------------------------------------------
ファイル:
 
Alexey Viktorov:

若いころの私の名前はアレクセイでした。でも、私はVictorも好きです :)))

おっと、何かあったようだ )))

すみません、Alexeiさん))

 
ToNy_Nazarov:

//--------------------------------------------------------------------
int start()
{
コメント("Bid = ", Bid,
"\nAsk = ", Ask,
"\nPoint = ", _Point,
"\nDigits = ", Digits);
return(0)です。
}
//--------------------------------------------------------------------

DoubleToString() 関数は、実数を出力するために使用します。

Документация по MQL5: Преобразование данных / DoubleToString
Документация по MQL5: Преобразование данных / DoubleToString
  • www.mql5.com
[in]  Формат точности. Если значение digits лежит в диапазоне от 0 до 16, то будет получено строковое представление числа с указанным количество знаков после запятой. Если значение digits лежит в диапазоне от -1 до -16, то...
 
Artyom Trishkin:

DoubleToString() 関数は、実数を表示するために使用されます。

疑問は完全に解決しました!ありがとうございました。

//--------------------------------------------------------------------
int start()
{
ダブルデルタ=Ask-Bid。
double delta2 = 1.10059-_Point;
Comment("Bid = ", DoubleToString(Bid,5),
"\nAsk = ", DoubleToString(Ask,5),
"\nDelta = ", DoubleToString(delta,5),
"\nDelta2 = ", DoubleToString(delta2,5),
"\nPoint = ", DoubleToString(_Point,5),
"\nDigits = ", Digits);
return(0)です。
}
//--------------------------------------------------------------------



ファイル: