アスク! - ページ 78 1...717273747576777879808182838485...182 新しいコメント n7drazen 2007.09.04 09:37 #771 Kalenzo: はい、スタート機能のみ必要です。 Kalenzoさん、ご回答ありがとうございます。 Kale 2007.09.04 09:39 #772 Bongo: Kalenzoさん質問があります。 HEDGING 探しています。 if (OrderOpenPrice() = = Bid (or Ask)) オープン価格は、新しい価格と同じでなければなりません。 私は同じペアEURUSDでヘッジしています。 もし、OpenPriceが売りで、価格が1.3580の場合。 買値は同じでなければなりません。 ありがとうございます。以下はそのコードです。 B. //------------------------------------------ if(Buy==0) { RefreshRates(); OrderSend(Symbol_1,OP_BUY,lotsi,MarketInfo(Symbol_ 1,MODE_ASK),...) RefreshRates(); if (OrderOpenPrice() == Bid) { OrderSend(Symbol_1,OP_SELL,lotsi,MarketInfo(Symbol _1,MODE_BID),...) } これでうまくいくはずですが、成行注文で作るのは難しいので、指定した水準で保留注文を 設定してみてください。 FXMan77 2007.09.04 09:58 #773 効いていないのです。 EAが買うだけです。 もし私がテイクアウトしたら if (OrderOpenPrice() == Bid) の後、買いと売りがあります。 しかし、同じ価格ではなく、その差は広がっています。 Richard 2007.09.04 13:33 #774 コード保護 関数'AccountNumber()' が正しい値を返さない、または1秒か2秒の間どんな値も返さない理由を知りたいです。 正しい値、または1秒か2秒の間どんな値も返さない理由を知りたい。 int Account = 123456; if (Account != AccountNumber()) { Comment("このアカウントではこのプログラムを使用できません"); return (0); さもなくば { Comment("プログラムへようこそ"); } ありがとうございます。 ejoi 2007.09.04 14:08 #775 int Account = 123456; //change this to yor acc number if (Account != AccountNumber()) { Comment("You can not use this program with this account"); return (0); } else { Comment("Welcome to Program"); } Ahmed Soliman 2007.09.04 15:53 #776 はい、そうなります。EAを最初にアタッチするとき(init)、またはEAをアタッチ解除するとき(deinit)に、コードを実行する必要がない場合。 n7drazen: init()関数とdeinit()関数がなくても、エキスパートアドバイザーは正常に動作するのですか? Ahmed Soliman 2007.09.04 15:54 #777 どういう意味ですか? RBK1959: 関数'AccountNumber()'はなぜ正しい値、または1〜2秒間の任意の値 int Account = 123456; if (Account != AccountNumber()) { Comment("このアカウントではこのプログラムを使用できません"); return (0); さもなくば { Comment("プログラムへようこそ"); 感謝 Richard 2007.09.04 16:35 #778 ラグ 正しいマシン番号でプロテクトをかけると、最初に「この番号ではプログラムは無効です」と表示され、数秒後に「有効です」と表示されます。 ありがとうございます。 リッチ fxgroup 2007.09.05 01:30 #779 CodersGuruへ 。クローズポジションのヘルプが必要です... CodersGuruへ。クローズポジションのヘルプが必要です。( 2番目の投稿 ) こんにちは、CodersGuruです。 これは、あなたに尋ねる2回目の投稿で、あなたは今、かなり忙しいかもしれません。 2回目の投稿でお騒がせして申し訳ありません。初めて勉強させていただくのは、EuroX2_sl、10ポイントから拡張した3つのEAスクリプトです。何度かフォワードテストをしたところ、このEAはOpen Positionは問題なくできるのですが、相場が反転したときに必要なClose Positionができません(インジケータを設定した後)。多分、コードに何か問題があるのだと思います(私はプログラマーではないので)。どの部分が間違っているのかチェックしていただけますか? 条件は以下の通りです。 1.ストキャスティクスのようなインジケータが存在する場合、買いを開始する。 2.売りの インジケータが存在する場合、買いをクローズします。 3.ストキャスティクスのような売り指数が存在する場合、売りを開始します。 4.ストキャスティクスの指標(上記1)が存在する状態で、クローズ売りをする。 OPENポジションは問題ないと思いますが、問題はCLOSEポジションで、インジケータが存在してもCLOSE(BUYまたはSELL)しないのです。 私が行ったコードは以下の通りです。 -------- ユーロX2_slのスクリプトを10ポイントから3ポイントに拡張してクローズポジションにしました。 // 正しく市場に参入することは重要です。 // しかし、正しく終了することはもっと重要です。 for(cnt=0;cnt<total;cnt++) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if(OrderType()<=OP_SELL && // 開いたポジションをチェック) OrderSymbol()==Symbol())// シンボルをチェック { //+-------------------------------------------------------------- if(OrderType()==OP_BUY)の場合// ロングポジションがオープン { //+------------------------------------------------------------------- //+ クローズポジションの条件 //+------------------------------------------------------------------- 買いポジションを閉じる //+--------------- -------------------------------- if ( Stoch_Main_M15_Cu < Stoch_Sig_M15_Cu ) //+------------------------------------------------------------------ { OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet) ; // ポジションクローズ return(0); // 終了 } //+----------------------------------------------------------------------- // トレーリングストップのチェック if(TrailingStop>0){ if(Bid-OrderOpenPrice()>Point*TrailingStop) { if(OrderStopLoss()<買値-売値*トレイリングストップ) { オーダーモディファイ(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green); return(0); } } } } //+--------------- 売りポジションを閉じる -------------------------------- else // 空売りポジションに移行する { //+削除しないでください if(OrderType()==OP_SELL) // ショートポジションがオープンされました。 { } //閉じるべきか? //+---------------------------------------------------------------------------- if ( Stoch_Main_M15_Cu > Stoch_Sig_M15_Cu ) //+----------------------------------------------------------------------------- { OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet) ; // クローズポジション return(0); // 終了 } //+---------------------------------------- // トレーリングストップのチェック if(TrailingStop>0){ if((OrderOpenPrice()-Ask)>(Point*TrailingStop)) { if((OrderStopLoss()>(Ask+Point*TrailingStop)))をチェックします。| (OrderStopLoss()==0))の場合 { OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Poi nt*TrailingStop,OrderTakeProfit(),0,Red).OrderTicket(),OrderOpenPrice(),Ask+Poi nt*TrailingStop,OrderTakeProtect(),0,Red); return(0); } } } } } -------------------------------------------------------------- ありがとうございました。 fxgroup 10ポイント 3.mq4 コーディングの方法は? 出口戦略ステップ・ストップとトレーリング・ストップの比較 Richard 2007.09.05 13:00 #780 ラグ codersguru: どういう意味ですか? Codersguru...保護用に頂いたコードです。 あなたのページにあるコードをそのまま使いました。 何が起こるかというと、正しいアカウント 番号がコードに入っていると、「プログラムへようこそ」の前に「このアカウントではこのプログラムを使用できません」というのが数秒間出てくるのです。 ありがとうございます。 リッチ 1...717273747576777879808182838485...182 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
はい、スタート機能のみ必要です。
Kalenzoさん、ご回答ありがとうございます。
Kalenzoさん
質問があります。
HEDGING
探しています。
if (OrderOpenPrice() = = Bid (or Ask))
オープン価格は、新しい価格と同じでなければなりません。
私は同じペアEURUSDでヘッジしています。
もし、OpenPriceが売りで、価格が1.3580の場合。
買値は同じでなければなりません。
ありがとうございます。以下はそのコードです。
B.
//------------------------------------------
if(Buy==0)
{
RefreshRates();
OrderSend(Symbol_1,OP_BUY,lotsi,MarketInfo(Symbol_ 1,MODE_ASK),...)
RefreshRates();
if (OrderOpenPrice() == Bid)
{
OrderSend(Symbol_1,OP_SELL,lotsi,MarketInfo(Symbol _1,MODE_BID),...)
}これでうまくいくはずですが、成行注文で作るのは難しいので、指定した水準で保留注文を 設定してみてください。
効いていないのです。
EAが買うだけです。
もし私がテイクアウトしたら
if (OrderOpenPrice() == Bid)
の後、買いと売りがあります。
しかし、同じ価格ではなく、その差は広がっています。
コード保護
関数'AccountNumber()' が正しい値を返さない、または1秒か2秒の間どんな値も返さない理由を知りたいです。
正しい値、または1秒か2秒の間どんな値も返さない理由を知りたい。
int Account = 123456;
if (Account != AccountNumber())
{
Comment("このアカウントではこのプログラムを使用できません");
return (0);
さもなくば
{
Comment("プログラムへようこそ");
}
ありがとうございます。
int Account = 123456; //change this to yor acc number
if (Account != AccountNumber())
{
Comment("You can not use this program with this account");
return (0);
}
else
{
Comment("Welcome to Program");
}
はい、そうなります。EAを最初にアタッチするとき(init)、またはEAをアタッチ解除するとき(deinit)に、コードを実行する必要がない場合。
init()関数とdeinit()関数がなくても、エキスパートアドバイザーは正常に動作するのですか?
どういう意味ですか?
関数'AccountNumber()'はなぜ
正しい値、または1〜2秒間の任意の値
int Account = 123456;
if (Account != AccountNumber())
{
Comment("このアカウントではこのプログラムを使用できません");
return (0);
さもなくば
{
Comment("プログラムへようこそ");
感謝ラグ
正しいマシン番号でプロテクトをかけると、最初に「この番号ではプログラムは無効です」と表示され、数秒後に「有効です」と表示されます。
ありがとうございます。
リッチ
CodersGuruへ 。クローズポジションのヘルプが必要です...
CodersGuruへ。クローズポジションのヘルプが必要です。( 2番目の投稿 )
こんにちは、CodersGuruです。
これは、あなたに尋ねる2回目の投稿で、あなたは今、かなり忙しいかもしれません。
2回目の投稿でお騒がせして申し訳ありません。初めて勉強させていただくのは、EuroX2_sl、10ポイントから拡張した3つのEAスクリプトです。何度かフォワードテストをしたところ、このEAはOpen Positionは問題なくできるのですが、相場が反転したときに必要なClose Positionができません(インジケータを設定した後)。多分、コードに何か問題があるのだと思います(私はプログラマーではないので)。どの部分が間違っているのかチェックしていただけますか?
条件は以下の通りです。
1.ストキャスティクスのようなインジケータが存在する場合、買いを開始する。
2.売りの インジケータが存在する場合、買いをクローズします。
3.ストキャスティクスのような売り指数が存在する場合、売りを開始します。
4.ストキャスティクスの指標(上記1)が存在する状態で、クローズ売りをする。
OPENポジションは問題ないと思いますが、問題はCLOSEポジションで、インジケータが存在してもCLOSE(BUYまたはSELL)しないのです。
私が行ったコードは以下の通りです。
-------- ユーロX2_slのスクリプトを10ポイントから3ポイントに拡張してクローズポジションにしました。
// 正しく市場に参入することは重要です。
// しかし、正しく終了することはもっと重要です。
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && // 開いたポジションをチェック)
OrderSymbol()==Symbol())// シンボルをチェック
{
//+--------------------------------------------------------------
if(OrderType()==OP_BUY)の場合// ロングポジションがオープン
{
//+-------------------------------------------------------------------
//+ クローズポジションの条件
//+-------------------------------------------------------------------
買いポジションを閉じる //+--------------- --------------------------------
if ( Stoch_Main_M15_Cu < Stoch_Sig_M15_Cu )
//+------------------------------------------------------------------
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet) ; // ポジションクローズ
return(0); // 終了
}
//+-----------------------------------------------------------------------
// トレーリングストップのチェック
if(TrailingStop>0){
if(Bid-OrderOpenPrice()>Point*TrailingStop)
{
if(OrderStopLoss()<買値-売値*トレイリングストップ)
{
オーダーモディファイ(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);
return(0);
}
}
}
}
//+--------------- 売りポジションを閉じる --------------------------------
else // 空売りポジションに移行する
{ //+削除しないでください
if(OrderType()==OP_SELL) // ショートポジションがオープンされました。
{
}
//閉じるべきか?
//+----------------------------------------------------------------------------
if ( Stoch_Main_M15_Cu > Stoch_Sig_M15_Cu )
//+-----------------------------------------------------------------------------
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet) ; // クローズポジション
return(0); // 終了
}
//+----------------------------------------
// トレーリングストップのチェック
if(TrailingStop>0){
if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
{
if((OrderStopLoss()>(Ask+Point*TrailingStop)))をチェックします。| (OrderStopLoss()==0))の場合
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Poi nt*TrailingStop,OrderTakeProfit(),0,Red).OrderTicket(),OrderOpenPrice(),Ask+Poi nt*TrailingStop,OrderTakeProtect(),0,Red);
return(0);
}
}
}
}
}
--------------------------------------------------------------
ありがとうございました。
fxgroup
ラグ
どういう意味ですか?
Codersguru...保護用に頂いたコードです。 あなたのページにあるコードをそのまま使いました。 何が起こるかというと、正しいアカウント 番号がコードに入っていると、「プログラムへようこそ」の前に「このアカウントではこのプログラムを使用できません」というのが数秒間出てくるのです。
ありがとうございます。
リッチ