アンバランスな左括弧を見つける手助け - ページ 2

 

よし、じゃあ、これをどうやって組み立てるか、説明しよう。

#1、コードの「基本」を組み立てます...そして、どんどん追加していきましょう...

int init()
{

return(0);
}//end of init function

int deinit()
{

return(0);
}//end of deinit function


int start()
{
double MAFast1 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast2 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow1 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow2 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 1);
    
double MAFast3 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast4 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow3 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow4 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 1);
    
     
double cci1 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 0);
double cci2 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 1);
double cci3 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 2);
   
double bands_upper1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 1);
double bands_upper2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 2);
double bands_lower1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 1);
double bands_lower2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 2);



return(0);
}//END OF START FUNCTION

さて、移動平均線と バンドを配置しました。

さて、いつ、なぜ、取引を開始したいのか、私に(分かりやすく)説明してください。

例えば、次のようなことを教えてください。

もし、MAが何であれ、そのようなものよりも大きければ、ロングにしたい。

0/です。

 

//(吉森) よし ありがとう...わかりやすく書くと...

もし( MAFast1 is Greater than MASlow1 and MAFast3 is Greater then MASlow3 and CCI3 was Inferior to 100 and CCI2 is equal or greater than 100 and CCI1 is greater than 100) ならばLongにしたいです。

OR if ( MAFast1 が MASlow1 より大きく、MaFast4 が MASlow4 より小さく、MAFast3 が MASlow3 より大きく、かつ CCI が 100 より大きい場合)

OR if ( MAFast2 が MASlow2 よりも劣後し、現在 MAFast1 が MASlow1 よりも大きく、MAFast3 が MASlow3 よりも大きく、CCI が 100 よりも大きい場合)

(Close[2]がbands_upper2より大きく、Close[0]がbands_upper1より小さい場合)にロングポジションを終了したいです。

//これらはあなたに意味をなさないか....このような書き方は初めてです。 Ericmanです。

 
int init()
{

return(0);
}//end of init function

int deinit()
{

return(0);
}//end of deinit function


int start()
{
double MAFast1 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast2 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow1 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow2 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 1);
    
double MAFast3 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast4 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow3 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow4 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 1);
    
     
double cci1 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 0);
double cci2 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 1);
double cci3 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 2);
   
double bands_upper1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 1);
double bands_upper2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 2);
double bands_lower1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 1);
double bands_lower2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 2);

int flag=0;

if(MAFast1>MASlow1 && MAFast3>MASlow3 && CCI3<100 && CCI2>=100 && CCI1>100) flag=1;

if(MAFast1>MASlow1 && MAFast4<MASlow4 && MAFast3>MASlow3 && CCI>100) flag=1;

if(MAFast2<MASlow2 && MAFast1>MASlow1 && MAFast3>MASlow3 && CCI>100) flag=1;

if(flag==1) go_long();

return(0);
}//END OF START FUNCTION

 

でも、あなたが言っていることに似ているかどうか、見てみてください......。

あなたが混乱してることを認めて、出てくることを怖がらないでください、もしあなたがそうしないなら、私はあなたを助けられません。

そうでなければ、あなたは迷ったままでしょう。

そうでなければ、あなたは迷ったままになってしまうわ。

0/。

私はすでに問題を見ている....

あなたがCCI変数を使うところを見ましたが、私たちはCCI変数を定義していません。

if(MAFast2<MASlow2 && MAFast1>MASlow1 && MAFast3>MASlow3 && CCI>100) flag=1;

教えてください。

また、クローズ・トレードの問題については、後ほど対処します。

また、もし私がこのスレッドを見失い、私に怒鳴りたくなったら、mql4@hush.com までご連絡ください。

をお知らせください。

 
smoknfx:

でも、あなたが言っていることに似ているかどうか、見てみてください......。

あなたが混乱してることを認めて、出てくることを怖がらないでください、もしあなたがそうしないなら、私はあなたを助けられません。

そうでなければ、あなたは迷ったままでしょう。

そうでなければ、あなたは迷ったままになってしまうわ。

0/。

私はすでに問題を見ている....

あなたがCCI変数を使うところを見ましたが、私たちはCCI変数を定義していません。

教えてください。

また、クローズ・トレードの問題については、後ほど対処します。

また、もし私がこのスレッドを見失い、私に怒鳴りたくなったら、mql4@hush.com までご連絡ください。

をお知らせください。


どうもありがとうございます。私はあなたが書いたものから学ぶとanylizeしようとします。 それはCCI1だった私は1を置くのを忘れてしまった。ありがとう、私は↑をチェックします mql4@hush.com 私はあなたの助けを当然と思わない!あなたから学ぶことを試みる。 あなたから学ぶことを試みる。ありがとうございます。
 
By the way what is flag.... it is the first time i see this.
 
wikiでの 複雑な定義や、プログラムの後の時点で使用するための実行経路をマークする単なる変数。
 
ericman:

フラグとは何ですか?

フラグは変数です。

単純なものです。

ということです。

int ready2golong=0;

ということです。


まず、0にセットします。

そして、それを1にするような比較をいくつかします。

そして、それが1であれば、go_long()を実行します。

 
ericman:

どうもありがとうございます。私はあなたが書いたものから学ぶとANYLIZEしようとします。 CCI1だったのですが、1を入れるのを忘れていました。ありがとうございます。 あなたから学ぶことを試みる。ありがとうございます。

私はこのようなことをするのが好きなんです。

これが私の楽しみなのです

お願いがあるんだけど?

そのコードをロードしてコンパイルしてみろ...

タイプミスのために修正する必要があるCCI変数を調整してください。

どうなるか教えてください。

0/です。

 
Ickyrus:
wikiの 複雑な定義、または単にプログラムの後の時点で使用するために実行のパスをマークする変数です。

を、間違っている。

説明させてください。

私がこの人のために物事を単純化しているのがわかりますか?

なぜ、彼に複雑なものを与える必要があると思うのですか?

その通りです。

その通りです。

ゼロです。