[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 550

 
kwadrad:


カスタムインディケーター "OsMA "の値を計算したいのですが。

コードで書く

直前のローソク足のOsMAの値を返すはずです

が、実際には間違った結果を返すことがある。

バッファは "0 "のようです。インジケータコードには3つのパラメータがあり、同じ順序で書かれていますが、結果は間違っています。

質問:どこがエラーなのかご教示ください。


OsMA」という名称は、標準のOsMA インジケーターと同じです。標準のインジケーターではなく、カスタムの インジケーターから値を求めるのは間違いないですか?カスタムからであれば、その名前を変更する。
 
paladin80:
OsMA」という名称は、標準のOsMA インジケーターと同じです。標準のインジケーターではなく、カスタムの インジケーターから値を求めるのは間違いないですか?カスタムからであれば、その名前を変更する。


ありがとう、カッコイイお馬鹿さん。

MT4ではカスタムインディケーターとして書かれているので、それで失敗してしまいました。

 

私はマスターではありません。

最も単純なケースでは、6つのパラメータが関数に渡されますね。他にどのようなパラメータが渡されるのでしょうか?バッファーも合っているのか?

インジケーターの名前まで含めて、小さなことでもすべてチェックします。

 
kwadrad:


ありがとうございます!カッコいいダサさですね。

MT4ではカスタムインディケーターとして書かれているので、それで失敗してしまいました。

大丈夫、そんなこともあります。EAで通常のOsMAの値が欲しい場合は、iOsMA 関数を使用するだけです。
 
Dimka-novitsek:

関数の書き方を忘れてしまったようです、Look, please!!!


Dimych, yo-yo, hare here laying out screenshots that are not really visible and take up a lot of space,insert code using SCR.
 
double     Lott  ( double     Lot, double   risk ){
     if ( risk!=0)  Lot=AccountFreeMargin()*risk/100 ; return Lot;}  
 

Lot' - 左括弧が期待されます C:\TeleTRADE/experts/variant parametres .mq4 (392, 63)

'Lot' - semicolon expected C:\TeleTRADE/experts/qualities.mq4 (392, 63)

';' - C:\TeleTRADE/experts/variant parametres .mq4 (392, 66) で期待される代入です。

悪態、パランテーズ、セミコロン!?

 
Dimka-novitsek:

Lot' - 左括弧が期待されます C:\TeleTRADE/experts/variant parametres .mq4 (392, 63)

'Lot' - semicolon expected C:\TeleTRADE/experts/qualities.mq4 (392, 63)

';' - assignment intended C:\TeleTRADE/experts/evaluation of parametrameter .mq4 (392, 66)

それは悪態、パランテーズ、セミコロン!

戻り値は括弧で囲んで取ること。

double     Lott  ( double     Lot, double   risk ){
     if ( risk!=0)  Lot=AccountFreeMargin()*risk/100 ; return ( Lot);}  
 
おお、ありがとうございます!!!!
 

コードを助けてください。課題はシンプルです。ただ、ファイルを開いて書き込むだけなのですが、ターミナルのディレクトリではなく、自分で指定したディレクトリに書き込む必要があります。

ファイルを開いたり、書き込んだりするだけでいいんです。

//-----------------------------------------------------------------------------------------
int FF;                     //Представляем переменную
int PP=10;                  //Представляем переменную
//-----------------------------------------------------------------------------------------
int start(){
   FF=FileOpen("DATA.csv",FILE_CSV|FILE_WRITE,';');    // Открываем файл для записи
      if(FF==-1){Alert("Ошибка = ",GetLastError());}   // В случае ошибки, сообщение
      else if(FF!=-1){                                 // Если все верно
         FileWrite(FF,PP);                             // Записываем значение "PP"
         Alert("Число записано = ",PP);                // Сообщение о записанном числе
         FileClose(FF);}}                              // Закрываем файл
//-----------------------------------------------------------------------------------------

ライブラリは、"ZI_File_Functions_Full_Lib" -https://www.mql5.com/ru/code/8577 で、一通り調べてみました。しかし、正しく作業するための情報が見つからず、自分では解決できない。機能が多すぎる!

どなたかもっと簡単な解決策、ユーザーが指定した任意のフォルダーでファイルを開き、そこに値を記録する方法をご存知の方、どうか教えてください。これだけです、他には何も必要ありません。または、このライブラリを減らすために私を助けるか、このタスクを実装する方法をアドバイスし、他のすべての機能を削除することができます。自分でも試していますが、エラーもなく、EAも無言で、結果も出ていません。

アドバイスありがとうございました。