初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 410 1...403404405406407408409410411412413414415416417...1503 新しいコメント Leanid Aladzyeu 2015.08.13 14:40 #4091 rosomah:標準ライブラリを使って、AskとBidを取得する場合、mysymbol.RefreshRates()を行う必要があるか教えてください。 i.e.更新、またはライブラリのデータについては、更新する必要はないのですか? または現在の価格が必要な場合は、何もする必要はありません。if((Bid-Xprice)/Point>=Step) Leanid Aladzyeu 2015.08.13 15:56 #4092 グリッドで新しい注文を開くと呼び出され、その目的はグリッド内のすべての注文のためにTPを再計算して変更することです。ただし、グリッドの中で最も古い順番のTPを変更するだけです。 何を混ぜているんだろう(笑))void ModifyOrders() { double avg= 0; int count = 0; for(int i=OrdersTotal()-1; i>=0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic) { if(OrderType()==OP_BUY || OP_SELL) { avg+=OrderOpenPrice(); count++; } } } } int Tcount=count-1; // Print("204"); avg=(Tcount*Step*0.4); // avg=NormalizeDouble(avg/count,Digits); for(int i=OrdersTotal()-1; i>=0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic) { if(OrderType()==OP_BUY) { double Bprice=FindLastBuyPrice();//Print("215"); TP=NormalizeDouble(Bprice+avg*Point,Digits); //Print("216"); bool res=OrderModify(OrderTicket(),OrderOpenPrice(),0,TP,0,Blue);// Print("217"); if(!res) Print(" Error modification. Error code = ",DoubleToString(GetLastError(),0)); } if(OrderType()==OP_SELL) { double Sprice=FindLastSellPrice(); TP=NormalizeDouble(Sprice-avg*Point,Digits); bool res=OrderModify(OrderTicket(),OrderOpenPrice(),0,TP,0,Red); if(!res) Print(" Error modification. Error code = ",DoubleToString(GetLastError(),0)); } } } } } Vladimir Karputov 2015.08.13 16:01 #4093 Leanid Aladzyeu:グリッドで新しい注文を開くと呼び出され、その目的はグリッド内のすべての注文のためにTPを再計算して変更することです。しかし、それはグリッドの中で最も古い順番のTPを変更するだけです。 何を混ぜているんだろう(笑)) いつになったらブラウザを変えるんだ?まるで子供のように。 Leanid Aladzyeu 2015.08.13 16:05 #4094 Karputov Vladimir: ブラウザはいつ変える?まるで子供のように。私のブラウザにサイトを適応させていないのは、サイトの問題です。相変わらずのサービスデスク、0ヘルプ。 ブラウザで問題ない。 Vladimir Karputov 2015.08.13 16:08 #4095 Leanid Aladzyeu:私のブラウザにサイトを適応させていないのは、サイトの問題です。相変わらずのサービスデスク、0ヘルプ。 ブラウザで問題ない。 Internet Explorerでコードを貼り付ける と、正確にコードを貼り付けることができます。周りの人のことを考える - コードを貼り付けたテキストとして読むのは恥ずかしいことです。 twiling1983 2015.08.13 17:14 #4096 MT4のコードを教えてください。新しいバーが 到着した場合、チャート・インジケータを再描画します。コードを発見し、それを起動にかけたと思いますif(IsNewBar()) { Print("Новый бар"); RefreshRates(); WindowRedraw(); }// функция за кодом bool IsNewBar(){ static datetime BARflag = 0; datetime now = Time[0]; if(BARflag < now) { BARflag = now; return(1); } else { return(0); }}プリントは出るが、チャートが再描画されない =( Alexey Viktorov 2015.08.14 09:26 #4097 twiling1983:MT4のコードを教えてください。新しいバーが 到着した場合、チャート・インジケータを再描画します。コードを発見し、それを起動にかけたと思いますプリントは出るが、チャートが再描画されない =( おそらく、RefreshRatesとWindowRedrawはインジケータに影響を与えないからでしょう。指標を掘る必要がある。 gammaray 2015.08.14 13:54 #4098 現在のチャートで何を何のために買っているのかを判断する方法(曲者ロシア人、すみません)。例えば、EURUSDのチャートでは、基準通貨(買うもの)はEURで、相場通貨(買うもの)はUSDです。識別することができます。string first = SymbolInfoString(Symbol(), SYMBOL_CURRENCY_BASE); string second = SymbolInfoString(Symbol(), SYMBOL_CURRENCY_PROFIT);例えば、金はどうでしょう?GOLDのチャートでは、両方の値がUSDになります。そして、USDのために金を買っていると判断する必要があるのです。シンボル名の文字列を解析することは適切ではありません。 twiling1983 2015.08.14 14:35 #4099 Alexey Viktorov: おそらく、RefreshRatesとWindowRedrawはインジケータに影響を与えないからです。指標を掘り下げる必要があるのです。まあ、端末の更新ボタンを押せば、すべて再計算されるんですけどね。 コード内で同じボタンを押すにはどうすればよいのでしょうか?=)私はそう考えています。ChartSetSymbolPeriod(0,NULL,PERIOD_CURRENT); Leanid Aladzyeu 2015.08.16 11:08 #4100 アレイの勉強を開始 .私は、配列、3つの配列= 0買い、1=売り、2=買いおよび売りの合計取引で プロ注文関数を書きました。そして、( 最初の条件 && 配列 [0] == 0 )なら買いを入れるという条件を書きました。 そして、もし( 最初の条件 && 配列 [1]== 0) ならば、売りポジションを建てることになります。しかし、テスターがエラーを投げてテストが止まってしまうのですが、何が問題なのでしょうか?( エラー " 配列の終了 " ) 1...403404405406407408409410411412413414415416417...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
標準ライブラリを使って、AskとBidを取得する場合、mysymbol.RefreshRates()を行う必要があるか教えてください。
i.e.更新、またはライブラリのデータについては、更新する必要はないのですか?
現在の価格が必要な場合は、何もする必要はありません。
if((Bid-Xprice)/Point>=Step)
グリッドで新しい注文を開くと呼び出され、その目的はグリッド内のすべての注文のためにTPを再計算して変更することです。
ただし、グリッドの中で最も古い順番のTPを変更するだけです。
何を混ぜているんだろう(笑))
グリッドで新しい注文を開くと呼び出され、その目的はグリッド内のすべての注文のためにTPを再計算して変更することです。
しかし、それはグリッドの中で最も古い順番のTPを変更するだけです。
何を混ぜているんだろう(笑))
ブラウザはいつ変える?まるで子供のように。
私のブラウザにサイトを適応させていないのは、サイトの問題です。相変わらずのサービスデスク、0ヘルプ。 ブラウザで問題ない。
私のブラウザにサイトを適応させていないのは、サイトの問題です。相変わらずのサービスデスク、0ヘルプ。 ブラウザで問題ない。
MT4のコードを教えてください。新しいバーが 到着した場合、チャート・インジケータを再描画します。
コードを発見し、それを起動にかけたと思います
プリントは出るが、チャートが再描画されない =(
MT4のコードを教えてください。新しいバーが 到着した場合、チャート・インジケータを再描画します。
コードを発見し、それを起動にかけたと思います
プリントは出るが、チャートが再描画されない =(
現在のチャートで何を何のために買っているのかを判断する方法(曲者ロシア人、すみません)。例えば、EURUSDのチャートでは、基準通貨(買うもの)はEURで、相場通貨(買うもの)はUSDです。識別することができます。
例えば、金はどうでしょう?GOLDのチャートでは、両方の値がUSDになります。そして、USDのために金を買っていると判断する必要があるのです。シンボル名の文字列を解析することは適切ではありません。
おそらく、RefreshRatesとWindowRedrawはインジケータに影響を与えないからです。指標を掘り下げる必要があるのです。
まあ、端末の更新ボタンを押せば、すべて再計算されるんですけどね。
コード内で同じボタンを押すにはどうすればよいのでしょうか?=)
私はそう考えています。
ChartSetSymbolPeriod(0,NULL,PERIOD_CURRENT);
アレイの勉強を開始 .
私は、配列、3つの配列= 0買い、1=売り、2=買いおよび売りの合計取引で プロ注文関数を書きました。
そして、( 最初の条件 && 配列 [0] == 0 )なら買いを入れるという条件を書きました。
そして、もし( 最初の条件 && 配列 [1]== 0) ならば、売りポジションを建てることになります。
しかし、テスターがエラーを投げてテストが止まってしまうのですが、何が問題なのでしょうか?( エラー " 配列の終了 " )