[ARCHIVE]フォーラムを乱立させないために、どんなルーキーの質問でも。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 5. - ページ 260

 
MetaTrader 4 非ディストロバージョンのダウンロード先を教えてください。
 

なんてこった...WORKING!!!!

#property indicator_chart_window
#import "user32.dll"
   int GetKeyState(int nVirtKey);
#import
extern string s0="номер окна от 0 до WindowsTotal()-1";
extern int aWindowNumber;
extern string s1="код клавиши (список см. winuser.h)";
extern int nVirtKey;
int i;

int init()
  {
   i=GetKeyState(nVirtKey);
   ObjectCreate("Smile",OBJ_LABEL,aWindowNumber,0,0);
   ObjectSet("Smile",OBJPROP_XDISTANCE,0);
   ObjectSet("Smile",OBJPROP_YDISTANCE,0);
   ObjectSetText("Smile", StringSetChar("", 0, 75), 50, "WingDings", Red);
   return(0);
  }

int deinit()
  {
   ObjectDelete("Smile");
   WindowRedraw();
   return(0);
  }

int start()
  {
   if (GetKeyState(nVirtKey)!=i){
      //Alert(Symbol(), " - ", StringGetChar(ObjectDescription("Smile"),0));
      i=GetKeyState(nVirtKey);
      if(StringGetChar(ObjectDescription("Smile"),0)==75){
         ObjectSetText("Smile", StringSetChar("", 0, 74), 50, "WingDings", Red);
         }else{
         ObjectSetText("Smile", StringSetChar("", 0, 75), 50, "WingDings", Red);
         }
      //switch(StringGetChar(ObjectDescription("Smile"),0)){
         //case 74 : ObjectSetText("Smile", StringSetChar("", 0, 75), 50, "WingDings", Red);//<-эта строка почему-то вообще управления не получает
         //case 75 : ObjectSetText("Smile", StringSetChar("", 0, 74), 50, "WingDings", Red);
         //}
   }
   return(0);
  }
 

コメントが必要です。

1.複数のチャートに対応し、キーボード全体を適切にインターセプトします。しかし、何らかの理由でaWindowNumberはすべてのウィンドウで常にゼロに設定されなければなりません。今でもその理由がわからない。説明できるかもしれませんね。

2.最初のコメント行は、テスト用の私です。

3.switch...caseブロックをコメントアウトすると、なぜかうまくいかない。

4.WinAPI関数GetKeyState自体がトリガーであり、最初の呼び出しで1が返されます。

5.エキスパートアドバイザーが動作する限り」(開始の内側で自分自身のループを閉じるために使用される)whileを持つ任意のコンストラクトがあることを私に思い出させるください。

わかりやすく言うとスマイリー・フェイスは最大10個のウィンドウに配置でき、それぞれにキーを割り当てて、キーボードから有効/無効を切り替えることができます。このコードは、例えばExpert Advisorの各ウィンドウで取引モードを 有効または無効にするなど、個人的なニーズに応じて使用することができます。

しかし、新しいローソク足が形成されるまでスマイリーが変化しない(分足でテスト)のは、私はそれが好きではありません。だから、「Expert Advisorが動作する 限り」ということを聞いているのです。

 
gyfto:

コメントが必要です。

1.複数のチャートに対応し、キーボード全体を適切にインターセプトします。しかし、何らかの理由でaWindowNumberはすべてのウィンドウで常にゼロに設定されなければなりません。今でもその理由がわからない。説明できるかもしれませんね。

2.最初のコメント行は、テスト用の私です。

3.switch...caseブロックをコメントアウトすると、なぜかうまくいかない。

4.WinAPI関数GetKeyState自体がトリガーであり、最初の呼び出しで1が返されます。

5.エキスパートアドバイザーが動作する限り」(開始の内側で自分自身のループを閉じるために使用される)whileを持つ任意のコンストラクトがあることを私に思い出させるください。

わかりやすく言うとスマイリー・フェイスは最大10個のウィンドウに配置でき、それぞれにキーを割り当てて、キーボードから有効/無効を切り替えることができます。このコードは、例えばExpert Advisorの各ウィンドウで取引モードを有効または無効にするなど、個人的なニーズに応じて使用することができます。

しかし、新しいローソク足が形成されるまでスマイリーが変化しない(分足でテスト)のは、私はそれが好きではありません。だから、「Expert Advisorが動作する 限り」ということを聞いているのです。

while (true)

{

 

} 
 
gyfto:
5.そういえば、whileを「EAが動いている限り」使うような構造はないのでしょうか(起動時にループを閉じるのに使う)。
while (!IsStopped()) //пока пользователь не снял эксперт с графика или по-другому не деинициализировал его
{
// делаем свое черное дело
}


ZZY 取引を続けろ、プログラミングをやめろ))))

 
alsu:


ZZS さっさとプログラミングやめろよ)))



トレーダーよりコーダーの方がいいかも!?
 
alsu:
while (!IsStopped())


ということを聞いていたんです。これからテストします。ブラック」コードであることは承知しています。

アルス

SZZY さっさと取引しろ、プログラミングやめろ))))

シグナルインジケータから変換されたExpert Advisorのラッパーはそれだったんだ。
 
borilunad:

営業マンよりコーダーの方がいいかも!?

この時代、プログラマーでないことは、何もできないことを意味します。それに私はプログラマーではなく、6学年しか学歴がないんです。ジプシー...
 

どなたか、私の質問にお答えください。紛失したのでしょう、数ページ上にあったのですが、見落とされただけかもしれないので、重複しておきます。


パラメータに従って複数の注文を出すスクリプトを教えてください。
例えば、

、指定したストップロスとテイクプロフィットのパラメーターで複数の買い注文を開き、同時に(つまり、同時に)指定したストップロスとテイクプロフィットのパラメーターで複数の売り注文も開きたいのです。

また、ストップロスやテイクプロフィットのパラメーターは手動で設定することができ、例えばストップロスを始値から+10pipsに設定することも可能です。

ありがとうございます。

 
EugeneN:

どなたか、私の質問にお答えください。迷子になったのでしょう、数ページ上にあったのですが、気づかれていないだけかもしれないので、重複して書いておきますね。


パラメータに基づいて複数の注文を開くスクリプトを提案してもらえますか?
例えば、こんな感じです。

ストップロスとテイクプロフィットのパラメータを指定した複数の買い注文を開き、すぐに(つまり同時に)ストップロスとテイクプロフィットのパラメータを指定した複数の売り注文も開きたいのです。

その上、ストップロスやテイクプロフィットのパラメーターは手動で設定でき、例えば、ストップロスを始値から+10ポイントに設定することも可能です。

ありがとうございます(苦笑)。


CodeBaseには、それがたくさんありますそれとも仕事!?それで、面白くないと、白紙でゼロから?他にやることがない人はほとんどいない!それよりも、勉強して、教科書から始めて、頑張ることです