[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 231

 
PapaYozh:


感情ゼロ =( まだ何もない =(
 
CLAIN:

感情なし =( まだ何もない =(


何か借りがあるような、嫌な予感がするんですよね。

CheckTicket()を分析し、チケットに何が書き込まれるのか?

また、一般的にはPrint(...)関数を 使い、ログを解析してください。

 
CLAIN:

感情ゼロ =( まだ何もない =(

機能の背景にあるあなたのロジックがわからない。念のため、これでいいのか確認されることをお勧めします。

iMACDは 正しく適用されていますか?また、Signal Lineは必要ないのでしょうか?

 
PapaYozh:


何か借りがあるような、嫌な予感がする。

CheckTicket()を分析し、チケットに何が書き込まれるのか?

一般的には、Print(...)関数を使用して、ログを解析します。


あなたは私に何の借りもない...そう思われたのなら、申し訳ありません...。ただ、彼女とはトラブル続きで............。
 

signal_MACDをtrueにするだけで、正常にトレードが終了し、関数の大きさだけで検索が絞られるので、checkticketは関係ないのだと思います。

 bool signal_MACD() 
  { 
    bool signal_MACD = false; 
    double tmp = iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0); 
    for(int i=1;i<=5;i++) 
    { 
       if(NormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0)*tmp,4)<0.0) 
       { 
          signal_MACD = true; 
          break; 
       }        
    } 
    return(signal_MACD);
  } 

このあたりでtrueを取りたがらないんですよね......forループがうまく使えないので、returnをどこに置けばいいかわからないんです

 
CLAIN:

signal_MACDをtrueにするだけで、正常にトレードが終了し、関数の大きさだけで検索が絞られるので、checkticketは関係ないのだと思います。

このあたりでtrueを取りたがらないんですよね......forループと相性が悪いので、returnをどこに置けばいいかわからないんです

また、double tmpNormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0) の違いは何でしょうか

掛け合わせると必ず0より大きくなる。

だと思います))

(-) * (-) = +

(+) * (+) = +

 

私の論理はとてもシンプルで...MACDが 5分以上0に片寄るようであれば、トレード...。ザッツオール

ところで、もし

bool signal_MACD() 
  { 
    bool signal_MACD = true; 
    double tmp = iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0); 
    for(int i=1;i<=5;i++) 
    { 
       if(NormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0)*tmp,4)<0.0) 
       { 
          signal_MACD = true; 
          break; 
       }        
    } 
    return(signal_MACD);
  } 

...3行目の "false "を "true "にすると、常に取引が行われます。これは、私が正しい取引ロジックとコードを書いたことを意味し、あとはforとreturn節だけとなります。

よろしくお願いします

 
DhP:

double tmp とNormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0) の違いは何ですか?

掛け合わせると必ず0より大きくなる。

だと思います))

(-) * (-) = +

(+) * (+) = +


は常に0より大きいとは限りません...。ただ、MACDがいずれかのティックで0を越えたら、(+)*(-)-があり、これはクロスを示しますが...。まあ私の論理 =) もちろん、必ずしも正しいとは限りませんが )
 
CLAIN:

私の論理はとてもシンプルで...MACDが5分以上0に片寄るようであれば、トレード...。ザッツオール

ちなみに、もし

...3行目の "false "を "true "にすると、常に取引が行われます。これは、私が正しい取引ロジックとコードを書いたことを意味し、あとはforとreturn節だけとなります。

よろしくお願いします


この関数は常に "true "を返すので、常に結論が出ます。
 
CLAIN:

私の論理はとてもシンプルで...MACDが5分以上0に片寄るようであれば、トレード...。ザッツオール

ところで、もし

...3行目の "false "を "true "にすると、常に取引が行われます。これは、私が正しい取引ロジックとコードを書いたことを意味し、あとはforとreturn節だけとなります。

完成させてください。

もしかしたら、行の中に(i)があるはずなのですが・・・・・・。

if(NormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,i).NormalizeDouble).