コーディングの方法は? - ページ 67 1...606162636465666768697071727374...347 新しいコメント nittany1 2008.02.02 15:14 #661 カウンター? 私は何ヶ月もインジケーターをプログラミングしているので、エキスパートが少し不足していますが、私はそれを解決するつもりです。その過程で、私は少し助けを必要とします。私が一緒に投げた私の専門家の中で、私はそれが取引を閉じることを正当化する条件があるかどうか、バーの終わりにチェックしています。 私はグローバル変数で開始します。 //--- Global variable datetime PreviousBar; // record candle/bar time[/CODE] and set one bool in init() int init() { do_this = true; } [/CODE] blah blah boring stuff.... etc, etc then in the main loop I have: [CODE] if(do_this == true) { PreviousBar = Time[0]; do_this= false; // so it does this only once only } if(NewBar() == true) { if(TotalOpenOrders() == blah blah close my order you crazy monkey) } and outside the main loop I have: [CODE]//--- returns true if current bar just formed bool NewBar() { if(PreviousBar<Time[0]) { PreviousBar = Time[0]; return(true); } else { return(false); } return(false); } OK、それはバーごとに一回行うように設定されています。私がやりたいのは、90秒とか60秒とかを増加させる関数を持っていて、その時間を増加させた後にブールを真に設定することです。基本的に、私はバーの終わりにではなく、60、90、120秒または何かごとに指標をチェックしたいです。どうすればいいのでしょうか? よろしくお願いします。 - nittany1 How to code? 'Close all'/'Open' tools Need help creating a omelette 2008.02.02 16:41 #662 nittany1: 私はインジケーターのプログラミングを何ヶ月もやっているので、エキスパートが少し不足していますが、それを解決するつもりです。その過程で、私は少し助けを必要としています。私が一緒に投げた私の専門家で、私はそれが取引を閉じることを正当化する条件があるかどうか、バーの終わりにチェックする必要があります。 私はグローバル変数から始めます。 //--- Global variable datetime PreviousBar; // record candle/bar time[/CODE] and set one bool in init() int init() { do_this = true; } [/CODE] blah blah boring stuff.... etc, etc then in the main loop I have: [CODE] if(do_this == true) { PreviousBar = Time[0]; do_this= false; // so it does this only once only } if(NewBar() == true) { if(TotalOpenOrders() == blah blah close my order you crazy monkey) } and outside the main loop I have: [CODE]//--- returns true if current bar just formed bool NewBar() { if(PreviousBar<Time[0]) { PreviousBar = Time[0]; return(true); } else { return(false); } return(false); } OK、それはバーごとに1回実行するように設定されています。私がやりたいのは、90秒とか60秒とかを増加させる関数を持っていて、その時間を増加させた後にブールを真に設定することです。基本的に、私はバーの終わりにではなく、60、90、120秒または何かごとに指標をチェックしたいです。どうすればいいのでしょうか? どんな助けでもありがとうございます。 - nittany1 これでできるはずです。MTはティックベースの実行を使用するので、秒単位の精度は不可能であることを忘れないでください(Init()サブですべてをループさせない限り)。 if (CallIndicatorsCheck()) { // ここにあなたのコードを bool CallIndicatorsCheck() { static datetime Oldtime; int Secs = 90; bool Flag; if (CurrTime() >= Oldtime) { Oldtime = CurrTime() + Secs; Flag = true; }. return(Flag)。 } wolfe 2008.02.04 01:03 #663 コメントの配置 どなたか、コメントをデフォルトの左上ではなく、画面の右上隅に 配置するコードを教えていただけませんか? ありがとうございます。 Linuxser 2008.02.04 01:27 #664 wolfe: どなたか、デフォルトの左上ではなく、右 上のコーナーに コメントを配置するコードを教えていただけませんか? ありがとうございます。 できません。MQL4マニュアルより。 void Comment( ...)この関数は、ユーザーによって定義されたコメントをチャートの左上隅に出力します。 もし、死ぬまでに必要であれば、オブジェクトを作成 することができます。 mog 2008.02.04 02:24 #665 wolfe: 誰か、コメントをデフォルトの左上ではなく、画面の右上隅に 配置するコードを見せてくれませんか? ありがとうございます。 LinusGuyの言うとおりで、直接的な方法はありません。 簡単な回避策は、コメント欄に空白を入れることです。 Comment(" hello world!"); とすると、テキストが右側にオフセットされます。 また、改行を入れてページをドロップダウンさせることもできます。 Comment("\n﹀ㅂ﹀)┛⁾⁾。 とか、改行とスペースを組み合わせて画面右下に表示させることもできます。 モグ wolfe 2008.02.04 05:33 #666 mog: LinusGuyの言うとおり、直接的な方法はない。 簡単な回避策は、Commentにスペースを入れることです。Comment(" hello world!"); とすると、テキストが右側にオフセットされます。 また、改行を入れてページを下に落とすことも可能です。 Comment("\n﹀ㅂ﹀)ㄘ⁾⁾。 とか、改行とスペースを組み合わせて画面右下に印刷することもできます。 モグ ありがとうございます。 やってみるよ! mikerawson 2008.02.04 07:30 #667 負けトレードの後、Xバーの間、新しいトレードがない。 こんにちは、チーム - 誰かが助けてくれることを願っています。 最後の取引が損失だった場合、新しい取引を10バー開始しないようにするにはどうすればよいですか? 乾杯 ralphronnquist 2008.02.04 07:59 #668 以下の関数は、口座履歴に過去の10本目のバー(現在のバーは0)のオープニング以降に決済した損切りの取引がある場合にtrueを返します。 それ以外の場合は偽を返します。 bool postMortem() { datetime since = Time[ bar+10 ]; for ( int i = OrdersHistoryTotal() - 1; i >= 0; i-- ) { if ( ! OrderSelect( i, SELECT_BY_POS, MODE_HISTORY ) continue; if ( OrderProfit() = since ) return( true ); } return( false ); } [/PHP] If you add that function to your EA, then include a statement like the following in the start() function, then Bob's your uncle. [PHP]if ( postMortem() ) return( 0 ); How to code? アスク! [WARNING CLOSED!] Any newbie mikerawson 2008.02.04 18:10 #669 thx very much for that - I will try it よろしくお願いします。 latotona 2008.02.06 19:29 #670 皆さん、同じ悩みを抱えていませんか? 私はエキスパートをコーディングしました。私は価格がある指標と同じであるとき、ポジションを開きたいのです。これを行うには、私は次の文を使用します。 //購入する double indicatorpast = icustom(...................1); double indicatornow = icustom(....................,0); if (close[1]indicatornow) OpenBUY(); if (close[1]>indicatorpast && close[0]<indicatornow) OpenSELL()。 しかし、このステートメントでは、価格がインジケータを越えたときだけでなく、インジケータの上でもポジションをオープンしてしまいます。私はインジケータを超えたときだけポジションを開くようにしたいので、次のことを試してみました。 //買いの場合 double indicatorpast = icustom(...................1); double indicatornow = icustom(...................,0); if (close[1]<indicatorpast && close[0]==indicatornow) OpenBUY()。 if (close[1]>indicatorpast && close[0]==indicatornow) OpenSELL()です。 しかし、このステートメントは実行されません。 あなたは何が起こっているのか知っていますか?私は文の中にエラーがないと思うので。 ありがとうございます。 1...606162636465666768697071727374...347 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
カウンター?
私は何ヶ月もインジケーターをプログラミングしているので、エキスパートが少し不足していますが、私はそれを解決するつもりです。その過程で、私は少し助けを必要とします。私が一緒に投げた私の専門家の中で、私はそれが取引を閉じることを正当化する条件があるかどうか、バーの終わりにチェックしています。
私はグローバル変数で開始します。
datetime PreviousBar; // record candle/bar time[/CODE]
and set one bool in init()
{
do_this = true;
}
[/CODE]
blah blah boring stuff.... etc, etc
then in the main loop I have:
[CODE]
if(do_this == true)
{
PreviousBar = Time[0];
do_this= false; // so it does this only once only
}
if(NewBar() == true)
{
if(TotalOpenOrders() == blah blah close my order you crazy monkey)
}
and outside the main loop I have:
[CODE]//--- returns true if current bar just formed
bool NewBar()
{
if(PreviousBar<Time[0])
{
PreviousBar = Time[0];
return(true);
}
else
{
return(false);
}
return(false);
}OK、それはバーごとに一回行うように設定されています。私がやりたいのは、90秒とか60秒とかを増加させる関数を持っていて、その時間を増加させた後にブールを真に設定することです。基本的に、私はバーの終わりにではなく、60、90、120秒または何かごとに指標をチェックしたいです。どうすればいいのでしょうか?
よろしくお願いします。
- nittany1
私はインジケーターのプログラミングを何ヶ月もやっているので、エキスパートが少し不足していますが、それを解決するつもりです。その過程で、私は少し助けを必要としています。私が一緒に投げた私の専門家で、私はそれが取引を閉じることを正当化する条件があるかどうか、バーの終わりにチェックする必要があります。
私はグローバル変数から始めます。
datetime PreviousBar; // record candle/bar time[/CODE]
and set one bool in init()
{
do_this = true;
}
[/CODE]
blah blah boring stuff.... etc, etc
then in the main loop I have:
[CODE]
if(do_this == true)
{
PreviousBar = Time[0];
do_this= false; // so it does this only once only
}
if(NewBar() == true)
{
if(TotalOpenOrders() == blah blah close my order you crazy monkey)
}
and outside the main loop I have:
[CODE]//--- returns true if current bar just formed
bool NewBar()
{
if(PreviousBar<Time[0])
{
PreviousBar = Time[0];
return(true);
}
else
{
return(false);
}
return(false);
}OK、それはバーごとに1回実行するように設定されています。私がやりたいのは、90秒とか60秒とかを増加させる関数を持っていて、その時間を増加させた後にブールを真に設定することです。基本的に、私はバーの終わりにではなく、60、90、120秒または何かごとに指標をチェックしたいです。どうすればいいのでしょうか?
どんな助けでもありがとうございます。
- nittany1これでできるはずです。MTはティックベースの実行を使用するので、秒単位の精度は不可能であることを忘れないでください(Init()サブですべてをループさせない限り)。
if (CallIndicatorsCheck())
{
// ここにあなたのコードを
bool CallIndicatorsCheck()
{
static datetime Oldtime;
int Secs = 90;
bool Flag;
if (CurrTime() >= Oldtime) {
Oldtime = CurrTime() + Secs;
Flag = true; }.
return(Flag)。
}
コメントの配置
どなたか、コメントをデフォルトの左上ではなく、画面の右上隅に 配置するコードを教えていただけませんか?
ありがとうございます。
どなたか、デフォルトの左上ではなく、右 上のコーナーに コメントを配置するコードを教えていただけませんか? ありがとうございます。
できません。MQL4マニュアルより。
もし、死ぬまでに必要であれば、オブジェクトを作成 することができます。
誰か、コメントをデフォルトの左上ではなく、画面の右上隅に 配置するコードを見せてくれませんか? ありがとうございます。
LinusGuyの言うとおりで、直接的な方法はありません。 簡単な回避策は、コメント欄に空白を入れることです。
Comment(" hello world!");
とすると、テキストが右側にオフセットされます。
また、改行を入れてページをドロップダウンさせることもできます。
Comment("\n﹀ㅂ﹀)┛⁾⁾。
とか、改行とスペースを組み合わせて画面右下に表示させることもできます。
モグ
LinusGuyの言うとおり、直接的な方法はない。 簡単な回避策は、Commentにスペースを入れることです。
Comment(" hello world!");
とすると、テキストが右側にオフセットされます。
また、改行を入れてページを下に落とすことも可能です。
Comment("\n﹀ㅂ﹀)ㄘ⁾⁾。
とか、改行とスペースを組み合わせて画面右下に印刷することもできます。
モグありがとうございます。 やってみるよ!
負けトレードの後、Xバーの間、新しいトレードがない。
こんにちは、チーム - 誰かが助けてくれることを願っています。
最後の取引が損失だった場合、新しい取引を10バー開始しないようにするにはどうすればよいですか?
乾杯
以下の関数は、口座履歴に過去の10本目のバー(現在のバーは0)のオープニング以降に決済した損切りの取引がある場合にtrueを返します。
それ以外の場合は偽を返します。
{
datetime since = Time[ bar+10 ];
for ( int i = OrdersHistoryTotal() - 1; i >= 0; i-- ) {
if ( ! OrderSelect( i, SELECT_BY_POS, MODE_HISTORY )
continue;
if ( OrderProfit() = since )
return( true );
}
return( false );
}
[/PHP]
If you add that function to your EA, then include a statement like the following in the start() function, then Bob's your uncle.
[PHP]if ( postMortem() ) return( 0 );thx very much for that - I will try it
よろしくお願いします。
皆さん、同じ悩みを抱えていませんか?
私はエキスパートをコーディングしました。私は価格がある指標と同じであるとき、ポジションを開きたいのです。これを行うには、私は次の文を使用します。
//購入する
double indicatorpast = icustom(...................1);
double indicatornow = icustom(....................,0);
if (close[1]indicatornow) OpenBUY();
if (close[1]>indicatorpast && close[0]<indicatornow) OpenSELL()。
しかし、このステートメントでは、価格がインジケータを越えたときだけでなく、インジケータの上でもポジションをオープンしてしまいます。私はインジケータを超えたときだけポジションを開くようにしたいので、次のことを試してみました。
//買いの場合
double indicatorpast = icustom(...................1);
double indicatornow = icustom(...................,0);
if (close[1]<indicatorpast && close[0]==indicatornow) OpenBUY()。
if (close[1]>indicatorpast && close[0]==indicatornow) OpenSELL()です。
しかし、このステートメントは実行されません。
あなたは何が起こっているのか知っていますか?私は文の中にエラーがないと思うので。
ありがとうございます。