[ARCHIVE]フォーラムを乱立させないために、どんなルーキーの質問でも。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 5. - ページ 17 1...101112131415161718192021222324...432 新しいコメント Vladimir Pastushak 2012.12.17 14:34 #161 こんにちは!オブジェクトの説明だけがわかっている場合、オブジェクトが手動で削除されたかどうかを知るにはどうしたらよいでしょうか。 たとえば、不明な名前のオブジェクト、テイクプロフィットが オブジェクトに添付されており、オブジェクトが削除されるとテイクプロフィットが削除され、オブジェクトの名前がわからない......オブジェクトの名前を変更する方法はありますか? Konstantin Drozdov 2012.12.17 14:54 #162 EAの改良をお願いします!シグナルが来たら1つ、次のシグナルが来たら1つと、未決済の注文があっても関係なく注文を出すようにしたいのです。どこが悪いか教えてください! m0=iMA(NULL,0,PeriodMA,0,MODE_SMA,PRICE_CLOSE,0); m1=iMA(NULL,0,PeriodMA,0,MODE_SMA,PRICE_CLOSE,1); lwma=iMA(NULL,0,PeriodLWMA,0,MODE_LWMA,PRICE_CLOSE,0); lwma1=iMA(NULL,0,PeriodLWMA,0,MODE_LWMA,PRICE_CLOSE,1); sar=iSAR(NULL,0,step,maximum,0); sar1=iSAR(NULL,0,step,maximum,1); //+------------------------------------------------------------------+ Lots=NormalizeDouble(AccountFreeMargin(),0)*MaxRisk/1000; if(Lots<0.01) return(Lot); //-------------------------------------------------------------------- balans=NormalizeDouble(AccountFreeMargin(),2); //-------------------------------------------------------------------- total=OrdersTotal(); if(OrdersTotal()>=0) { x=1; x++; //==========================Медленный================================== if( m1>lwma1 && m0<lwma && balans>0 && total<x) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Ask+sl*Point,Ask-tp*Point,"0",Magik,0,Red); } if(ticket>0) { Alert("Продажа №",ticket,"\n",Symbol()); return(0); } //-------------------------------------------------------------------- if ( m1<lwma1 && m0>lwma && balans>0 && total<x) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-sl*Point,Bid+tp*Point,"0",Magik,0,Blue); } if(ticket>0) { Alert("Покупка № ",ticket,"\n",Symbol()); return(0); } //========================Быстрый===================================== if(sar1<Bid && sar>Ask && balans>0 && total<x) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Ask+sl1*Point,Ask-tp1*Point,"0",Magik1,0,Red); return; } if(ticket>0) { Alert("Продажа №",ticket,"\n",Symbol()); return(0); } //--------------------------------------------------------------------- if(sar1>Ask && sar<Bid && balans>0 && total<x) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-sl1*Point,Bid+tp1*Point,"0",Magik1,0,Blue); } if(ticket>0) { Alert("Покупка №",ticket,"\n",Symbol()); return(0); } } elllfix 2012.12.17 15:53 #163 行き詰まり if(Ma_1>Ma_2 && flagg==0) {PlaySound("news.wav"); flagg=1; flag=0; }.if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); flag=1; flagg=0; }.Print(flag,flagg)です。Ma_1 - short Ma_2 - longMa_1>Ma_2 で news.wav を停止せずにビープし、0 1 を表示する場合 (すなわち、flag=0 flagg=1)。が、flagg=1の時に条件(Ma_1>Ma_2 && flagg=0)が成立して{PlaySound("news.wav")が通るのはどうしてでしょう? 削除済み 2012.12.17 16:46 #164 すべてこんにちは、私は順序が開いていない場合、例えば、1000のrequittyとrequittyの%は5%に設定されているrequited量の初期値の一定の割合の後にすべての位置を閉じるためにEAをリメイクする必要があるので、それはrequitty 1050とすべての位置を閉じ、私はEAがグローバル変数を記録 し、彼はこの値を読んで、位置を閉じていたことが、EAは閉じたいとは思わないことを作った。残高が増え、「資本」の5%でいくつかのポジションを決済しなければなりませんが、1050にはならず、もう少し待たなければならないこともありますし、価格が方向転換して利益ではなく損失になってしまいます。!!ご返信ありがとうございました。 ファイル: profitzvcdeoteecviti.mq4 3 kb Dimka-novitsek 2012.12.17 16:47 #165 こんばんは!(^o^)であることは正しく理解されていますか? アイストキャスティック モード 私が言っているのは、KラインかDラインか?さらに、0がKで、1がD? Dimka-novitsek 2012.12.17 16:52 #166 そして、グローバル変数の ない、このようなバリアントを見てください。if(Profit>AccountEquity( )*koefitsientudaleniya){ int Total=OrdersTotal(); for( i=OrdersTotal()-1;i>=0;i--){ OrderSelect(i, SELECT_BY_POS, MODE_TRADES); if(OrderSymbol() != Symbol()) continue; if (OrderMagicNumber() != 450) continue; if(OrderType()==OP_SELL) { OrderClose(OrderTicket(),OrderLots(),Ask,6,Red);Print(" i " , i," GetLastError()CloseOP_SELL ", GetLastError() );} if(OrderType()==OP_BUY) { OrderClose(OrderTicket(),OrderLots(),Bid,6,Red);Print(" i " , i," GetLastError()CloseOP_BUY ", GetLastError() );}}} и виличины, закрываем все ордера! //---- Dimka-novitsek 2012.12.17 16:59 #167 そう、マッシュを変える前にシグナルが出ないはずなんです!!!!なんとなく...おそらく、コード全体を見るのでしょう表示されないようですが...。 削除済み 2012.12.17 16:59 #168 例えば1000のような未決済の注文がないときに、eQuityの値をアドバイザーに記憶させ、%-5と書いたように、すべてのポジションが閉じられたときにeQuityの値は1050になります。 削除済み 2012.12.17 17:05 #169 lottamer:行き詰まり if(Ma_1>Ma_2 && flagg==0) {PlaySound("news.wav"); flagg=1; flag=0; }.if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); flag=1; flagg=0; }.Print(flag,flagg)です。Ma_1 - short Ma_2 - longMa_1>Ma_2 で news.wav を停止せずにビープし、0 1 を表示する場合 (すなわち、flag=0 flagg=1)。が、flagg=1の時に条件(Ma_1>Ma_2 && flagg=0)が成立して{PlaySound("news.wav")が通るのはどうしてでしょう? フラグの状態を条件ごとに分けて表示する。2つ目のフラッグの状態は、コンディションに考慮されないので、そうなってしまったのですね。追伸:また、混乱を避けるために、Print("flag=",flag, "flagg=",flagg) と出力する方が便利です。 Dimka-novitsek 2012.12.17 17:05 #170 デモのロボットもそうなっています。どうして書こうと思ったのか、詳しく覚えていないんです。if(Profit>AccountBalance()*koefitsientudaleniya){ int Total=OrdersTotal(); for( i=OrdersTotal()-1;i>=0;i--){ OrderSelect(i, SELECT_BY_POS, MODE_TRADES); if(OrderSymbol() != Symbol()) continue; if(OrderMagicNumber() != 450) continue; if(OrderType()==OP_SELL) { OrderClose(OrderTicket(),OrderLots(),Ask,6,Red);Print(" i " ), i,"GetLastError()CloseOP_SELL", GetLastError() );}. if(OrderType()==OP_BUY){ OrderClose(OrderTicket(),OrderLots(),Bid,6,Red);Print(" i "), i," GetLastError()CloseOP_BUY ", GetLastError() );}} // 利益が指定した値を超えたら、すべての注文を決済します!//---- あるいは、年上の友人に助言してもらうか...。 コーディングのヘルプ [ARCHIVE]Any rookie question, so 10ポイント 3.mq4 1...101112131415161718192021222324...432 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんにちは!オブジェクトの説明だけがわかっている場合、オブジェクトが手動で削除されたかどうかを知るにはどうしたらよいでしょうか。 たとえば、不明な名前のオブジェクト、テイクプロフィットが オブジェクトに添付されており、オブジェクトが削除されるとテイクプロフィットが削除され、オブジェクトの名前がわからない......
オブジェクトの名前を変更する方法はありますか?
EAの改良をお願いします!シグナルが来たら1つ、次のシグナルが来たら1つと、未決済の注文があっても関係なく注文を出すようにしたいのです。
どこが悪いか教えてください!
行き詰まり
if(Ma_1>Ma_2 && flagg==0) {PlaySound("news.wav"); flagg=1; flag=0; }.
if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); flag=1; flagg=0; }.
Print(flag,flagg)です。
Ma_1 - short
Ma_2 - long
Ma_1>Ma_2 で news.wav を停止せずにビープし、0 1 を表示する場合 (すなわち、flag=0 flagg=1)。
が、flagg=1の時に条件(Ma_1>Ma_2 && flagg=0)が成立して{PlaySound("news.wav")が通るのはどうしてでしょう?
そして、グローバル変数の ない、このようなバリアントを見てください。
行き詰まり
if(Ma_1>Ma_2 && flagg==0) {PlaySound("news.wav"); flagg=1; flag=0; }.
if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); flag=1; flagg=0; }.
Print(flag,flagg)です。
Ma_1 - short
Ma_2 - long
Ma_1>Ma_2 で news.wav を停止せずにビープし、0 1 を表示する場合 (すなわち、flag=0 flagg=1)。
が、flagg=1の時に条件(Ma_1>Ma_2 && flagg=0)が成立して{PlaySound("news.wav")が通るのはどうしてでしょう?
フラグの状態を条件ごとに分けて表示する。2つ目のフラッグの状態は、コンディションに考慮されないので、そうなってしまったのですね。
追伸:また、混乱を避けるために、Print("flag=",flag, "flagg=",flagg) と出力する方が便利です。
デモのロボットもそうなっています。どうして書こうと思ったのか、詳しく覚えていないんです。
if(Profit>AccountBalance()*koefitsientudaleniya){
int Total=OrdersTotal();
for( i=OrdersTotal()-1;i>=0;i--){
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if(OrderSymbol() != Symbol()) continue;
if(OrderMagicNumber() != 450) continue;
if(OrderType()==OP_SELL) {
OrderClose(OrderTicket(),OrderLots(),Ask,6,Red);Print(" i " ), i,"GetLastError()CloseOP_SELL", GetLastError() );}.
if(OrderType()==OP_BUY){
OrderClose(OrderTicket(),OrderLots(),Bid,6,Red);Print(" i "), i," GetLastError()CloseOP_BUY ", GetLastError() );}} // 利益が指定した値を超えたら、すべての注文を決済します!
//----
あるいは、年上の友人に助言してもらうか...。