初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 523 1...516517518519520521522523524525526527528529530...1503 新しいコメント 削除済み 2016.02.26 20:00 #5221 EAのEnvelopes インジケータ、EAは自分で書きました、設定でシフト(-7)を入れました。Envelopesインジケータのマイナスシフトの注文をEAが開けない のはなぜですか? Oksana Berenko 2016.02.26 22:26 #5222 Vagif Babaev:EAのEnvelopes インジケータ、EAが自分で書きました、設定でシフト(-7)を入れました。Envelopesインジケータのマイナスシフトの注文をEAが開けない のはなぜですか? iEnvelopes では,インジケータバッファから 受け取った値のインデックスをシフトより小さくしてはならない,すなわち,最後の値を7より小さくしてはならない。 Sergey Gritsay 2016.02.27 03:52 #5223 demonoid123000: プログラマーの皆様へ。手伝ってくれる?Expert Advisorに未決済注文数を付けたいのですが、どうすればいいですか?役に立つかどうかはわかりません。このフクロウを何組か置いても、注文は1つしか開けない。片方のペアで注文を出すと、もう片方のペアのシグナルが無視されない。どうしたらいいのかわからない。問題はこの状態ですif(OrderSelect(0,SELECT_BY_POS,MODE_TRADES)==False)こうすればいいのです。//+------------------------------------------------------------------+ //| Hippo_Buy.mq4 | //| ut_Kanada | //| albertgod1972@mail.ru | //+------------------------------------------------------------------+ #property copyright "ut_Kanada" #property link "albertgod1972@mail.ru" #property version "1.00" #property strict //===================================================================+ // ЗАДАНЫЕ ЗНАЧЕНИЯ | //===================================================================+ extern double Lot= 0.1; extern bool Stop = true; extern int SL = 250; extern int TP = 500; extern bool BU=false; // Переменная для включения Безубытка. extern bool Tral = true; // Переменная для выключения трала. extern int putr = 100; // Включение трала при прохождении цены putr пунктов. extern int TrailingStop = 150; // Непосредственно сам трал. //***************************************************************************************************************** //==================================================================+ // Переменные для программы | //==================================================================+ int TekBar = -1; // Текущий бар. int Or; // Номер ордера. //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ //==================================================================+ int start() { //==================================================================+ // Индикаторы | //==================================================================+ double TA1=NormalizeDouble(iCustom(NULL,0,"Trendsignal_Alert_Buy",3,300,true,true,0,0,false,1,0,1),Digits); //==================================================================+ // Условия модификации Ордеров. | //==================================================================+ if(Tral==true) { int cnt; for(cnt=OrdersTotal(); cnt>=0; cnt--) { Or=OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES); if(OrderType()==OP_SELL) { if(OrderOpenPrice()-Ask>=putr*Point) if(OrderStopLoss()>(Ask+Point*(TrailingStop+MarketInfo(Symbol(),MODE_SPREAD)))) Or=OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,0); } if(OrderType()==OP_BUY) { if(Bid-OrderOpenPrice()>=putr*Point) if(OrderStopLoss()<(Bid-Point*(TrailingStop+MarketInfo(Symbol(),MODE_SPREAD)))) Or=OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,0); } } } //==================================================================+ // Условия перевода в Безубыток. | //==================================================================+ if(BU==true) { int cnt; for(cnt=OrdersTotal(); cnt>=0; cnt--) { Or=OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES); if(OrderType()==OP_SELL && OrderStopLoss()>=OrderOpenPrice()) { if(OrderOpenPrice()-Ask>=putr*Point) if(OrderStopLoss()>(Ask+Point*(TrailingStop+MarketInfo(Symbol(),MODE_SPREAD)))) Or=OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,0); } if(OrderType()==OP_BUY) { if(Bid-OrderOpenPrice()>=putr*Point && OrderStopLoss()<=OrderOpenPrice()) if(OrderStopLoss()<(Bid-Point*(TrailingStop+MarketInfo(Symbol(),MODE_SPREAD)))) Or=OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,0); } } } //==================================================================+ /* int q; for(q = 1; q <= Bars; q++) { double TAq = NormalizeDouble(iCustom(NULL,0,"Trendsignal_Alert_Buy",3,300,true,true,0,0,false,1,0,q),Digits); if(TAq != 0) { Comment("TAq = ",TAq); break; } }*/ //==================================================================+ // Условия и Открытие Ордеров. | //==================================================================+ if(Stop==true) { if(Total_orders(_Symbol)==0) { if(TekBar==Bars)return(0); TekBar=Bars; { if(TA1>High[1] && TA1!=0) // Условия продажи. Or=OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Bid+SL*Point,Bid-TP*Point,"000",0,0,Tomato); // Продажа. if(TA1<Low[1] && TA1!=0) Or=OrderSend(Symbol(),OP_BUY,Lot,Ask,3,Ask-SL*Point,Ask+TP*Point,"000",0,0,RoyalBlue); // Покупка. ; } } } if(Stop==false) { if(Total_orders(_Symbol)==0) { if(TekBar==Bars)return(0); TekBar=Bars; { if(TA1>High[1] && TA1!=0) // Условия продажи. Or=OrderSend(Symbol(),OP_SELL,Lot,Bid,3,0,0,"000",0,0,Tomato); // Продажа. if(TA1<Low[1] && TA1!=0) Or=OrderSend(Symbol(),OP_BUY,Lot,Ask,3,0,0,"000",0,0,RoyalBlue); // Покупка. } } } //---- return(0); } //+------------------------------------------------------------------+ int Total_orders(string symbol //int type ) { int n=0; int total=OrdersTotal(); for(int i=0; i<total; i++) { if(OrderSelect(i,SELECT_BY_POS)) { //if(OrderType()!=type)continue; //if(OrderMagicNumber()!=Magic)continue; if(OrderSymbol()!=symbol)continue; n++; } } return(n); } //+------------------------------------------------------------------+ Sergey Gritsay 2016.02.27 10:22 #5224 angel341:インジケータを上下にnポイント移動させるには、どのようなパラメータや関数が有効でしょうか? Shiftパラメータを追加し、正の数は上に、負の数は下にシフトするようにしました。 ファイル: MultiInstrument.mq4 4 kb demonoid123000 2016.02.27 11:12 #5225 Sergey Gritsay:問題はこの状態ですこのような仕組みになっています プログラミング言語が全くわからない...要するにわからないんです。もしかしたら、これらの値を変更することができるかもしれません。 Sergey Gritsay 2016.02.27 11:33 #5226 demonoid123000: プログラミング言語が全く分からない・・・理解できない。もしかしたら、これらの値を変更することができるかもしれません。 では、このコードはどこで手に入れたのでしょうか? angel341 2016.02.27 12:25 #5227 Sergey Gritsay: Shiftパラメータを追加し、正の数で上方へ、負の数で下方へオフセットできるようにした。 ありがとうございました!これからテストします!!!! angel341 2016.02.27 13:11 #5228 Sergey Gritsay: добавил параметр Shift, положительное число смещение вверх, отрицательное вниз.ありがとうございました。 toni_stark 2016.02.27 19:36 #5229 Sergey Gritsay:ってなもんです。 この機能を実行すると、注文が削除されますか?もしそれがコードの最初に呼ばれるなら、" if(TimeCurrent()>=D'23:50')close_all();return;" プログラムはそれ以上動きません、つまり注文は開かれずログには「停止ボタンが押された」と書かれています。この1行を削除すると、すべてが動作し、開くようになります。何が問題なのか説明してください。細かいことはよくわからないので、関数の本体だけ コピーしてみました。 Sergey Gritsay 2016.02.28 02:11 #5230 toni_stark: この機能を実行すると、注文が削除されますか?もしそれがコードの最初に呼ばれるなら、" if(TimeCurrent()>=D'23:50')close_all();return;" プログラムはそれ以上動きません、つまり注文は開かれずログには「停止ボタンが押された」と書かれています。この1行を削除すると、すべてが動作し、開くようになります。何が問題なのか説明してください。細かいことは苦手なので、関数の本体だけ コピーしています。 あなたのコードを教えてください 1...516517518519520521522523524525526527528529530...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
EAのEnvelopes インジケータ、EAが自分で書きました、設定でシフト(-7)を入れました。Envelopesインジケータのマイナスシフトの注文をEAが開けない のはなぜですか?
プログラマーの皆様へ。手伝ってくれる?Expert Advisorに未決済注文数を付けたいのですが、どうすればいいですか?役に立つかどうかはわかりません。このフクロウを何組か置いても、注文は1つしか開けない。片方のペアで注文を出すと、もう片方のペアのシグナルが無視されない。どうしたらいいのかわからない。
問題はこの状態です
こうすればいいのです。
インジケータを上下にnポイント移動させるには、どのようなパラメータや関数が有効でしょうか?
問題はこの状態です
このような仕組みになっています
プログラミング言語が全く分からない・・・理解できない。もしかしたら、これらの値を変更することができるかもしれません。
Shiftパラメータを追加し、正の数で上方へ、負の数で下方へオフセットできるようにした。
Sergey Gritsay:
добавил параметр Shift, положительное число смещение вверх, отрицательное вниз.
ありがとうございました。
ってなもんです。
この機能を実行すると、注文が削除されますか?もしそれがコードの最初に呼ばれるなら、" if(TimeCurrent()>=D'23:50')close_all();return;" プログラムはそれ以上動きません、つまり注文は開かれずログには「停止ボタンが押された」と書かれています。この1行を削除すると、すべてが動作し、開くようになります。何が問題なのか説明してください。細かいことは苦手なので、関数の本体だけ コピーしています。