コーディングの方法は? - ページ 180 1...173174175176177178179180181182183184185186187...347 新しいコメント marek 2009.05.24 18:13 #1791 閉じる位置の問題 ...... double cena=0; 静的 int isCrossed = 0; isCrossed = Crossed (k,d); if(OrderSelect(ticket, SELECT_BY_POS)) { c=OrderOpenPrice()です。 return(0); } if (isCrossed>0) { cena=((c-Ask)*10000); return(0); total = OrdersTotal(); if(total < 1) { if(isCrossed == 1) { ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, 1000, cena, cena , "EMA_CROSS", 12345, 0, Green); } .... if(isCrossed == 2) { ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, 1000, cena, cena, "EMA_CROSS", 12345, 0, 赤); ...... 一般的なEAは、EMAが交差したときにポジションをクローズし、同時に別のポジションをオープンします。 ポジションは開いたが、閉じようとしない;/。 助けてください How to code? 絵馬クロス! [Archive!] Any rookie question, jan100 2009.05.25 17:36 #1792 あるポジションを決済し、同じティックで新しいポジションを建てることは可能ですか? (...) if(OrdersTotal()!=0) { (...) OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), Slippage, Green ); } if(OrdersTotal()==0) { OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, Ask - SL * Point, Ask + TP * Point, NULL, Magic, 0, Green); } (...) このコード例では、ショートポジションは最初のティックで決済されますが、ロングポジションは即座にオープンされるわけではありません。ロングポジションを開くには、もう1ティック必要です。 よろしくお願いします :-) Roger09 2009.05.25 20:35 #1793 はい、可能です。演算子の間にRefreshRates()という関数を 挟むだけです。 Roger09 2009.05.25 20:40 #1794 Roger09 2009.05.25 20:46 #1795 pietra`:......助けてください みたいですね。私はピエトラです。私のセカンドネームは何ですか? 全コードが分からないと無理です。すみません。 lumanauw 2009.05.26 18:09 #1796 コーディングのヘルプ EAの最大・最小建値を 知るためのMT4コーディングについて、どなたか教えてください。EAによっていくつかのオープンがあります。 このようなコードを見つけましたが、これは最初と最後の取引の開始を知るためのものです。 double GetLastBuyPrice(int Magic) { int total=OrdersTotal()-1; for (int cnt = total ; cnt >=0 ; cnt--) { OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES); if (OrderMagicNumber() == Magic && OrderSymbol() ==Symbol() && (OrderType() ==OP_BUY)) { (OrderMagicNumber() == Magic && OrderSymbol() ==Symbol() && (OrderType() ==OP_BUY)) { return(OrderOpenPrice())。 } return(10000); } 取引開始時の最高値・最安値を知るためのコードとは? solaiman 2009.05.26 19:15 #1797 コード lumanauw: EAの最大・最小建値を知るためのMT4コーディングについて、どなたか教えてください。EAでオープンしているものがあります。 このようなコードを見つけたのですが、これは最初のトランザクションと最後のトランザクションのオープニングを知るためのものです。 Double opens[1000] = {0}; double maxopen = 0 ; double minopen = 1000000 ; // double GetLastBuyPrice(int Magic) { int total=OrdersTotal()-1; for (int cnt = total ; cnt >=0 ; cnt--) { OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES); if (OrderMagicNumber() == Magic && OrderSymbol() ==Symbol() && (OrderType() ==OP_BUY)) { (OrderMagicNumber() == Magic && OrderSymbol() == Symbol() && (OrderType() == OP_BUY)) { opens[cnt] = OrderOpenPrice() ; } } for ( cnt = 0 ; cnt <= total ; cnt ++ ) { if ( opens[cnt] > maxopen ) maxopen = opens[cnt] ; if ( opens[cnt] < minopen ) minopen = opens[cnt] ; } } トランザクションオープニングの最高値/最安値を知るためのコーディング方法は? ハイ。 上記のようにコードを変更してください。 これは他のプロシージャから呼び出すためのものではありません..., EA のコードの好きなところに置いてください。 OTR 削除済み 2009.05.26 22:06 #1798 複数の注文を開くためのコードを作成する手助けが必要です。 2つ目の注文を出すためのコードを追加するのに失敗しています。 私は、異なるTPレベルで同じ信号に基づいて2つの注文を開こうとしています。 以下は、最初の注文を開くための私のコードです。 どんな助けでも感謝します。 if(SlowSell<0 && FastSell<0 && PrevFastSell==0) { ticket=OrderSend(Symbol(),OP_SELL,LotSize,Bid,Slipage,Bid+StopLoss*Point,Bid-TakeProfit*Point, "MA_Angle_Trader",MagicNumber,0,Red); if(チケット>0) { if(オーダーセレクト(チケット,SELECT_BY_TICKET,MODE_TRADES))Print("SellStop注文が オープンしました:",OrderOpenPrice()); else Print("SellStop注文の開始エラー :",GetLastError())。 return(0); ticket=OrderSend(Symbol(),OP_SELL,LotSize,Bid,Slipage,Bid+StopLoss*Point,0,「MA_Angle_Trader」MagicNumber,0,Red).を実行します。 if(チケット>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))Print("SellStop注文がオープンしました:",OrderOpenPrice()); else Print("SellStop注文の開始エラー :",GetLastError())。 return(0); why do I get 初心者の方からの質問 MQL4 MT4 MetaTrader Getlasterror returns 0, why? Pro-TRMGS 2009.05.27 11:33 #1799 こんにちは 簡単なコーディングのヘルプをお願いします。 1) あるピップ数でトレードをヘッジする。 2) その後、それ以上の取引を無効にする/停止する。 私は手動でヘッジされた取引を閉じるので、それが再びヘッジされないことを確認します。 Roger09 2009.05.27 13:50 #1800 williamcope: 2つ目の注文を開くためのコードを追加してもうまくいきません。同じシグナルで、異なるTPレベルの2つの注文を出そうとしています。 以下は、最初の注文を出すための私のコードです。 どんな助けでも感謝します。 if(SlowSell<0 && FastSell<0 && PrevFastSell==0) { ticket=OrderSend(Symbol(),OP_SELL,LotSize,Bid,Slipage,Bid+StopLoss*Point,Bid-TakeProfit*Point, "MA_Angle_Trader",MagicNumber,0,Red); if(チケット>0) { if(オーダーセレクト(チケット,SELECT_BY_TICKET,MODE_TRADES))Print("SellStop注文がオープンしました:",OrderOpenPrice()); else Print("SellStop注文の開始エラー :",GetLastError())。 return(0); ticket=OrderSend(Symbol(),OP_SELL,LotSize,Bid,Slipage,Bid+StopLoss*Point,0,「MA_Angle_Trader」MagicNumber,0,Red).を実行します。 if(チケット>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))Print("SellStop注文がオープンしました:",OrderOpenPrice()); else Print("SellStop注文の開始エラー :",GetLastError())。 return(0); } 最初に置き換える return(0); から RefreshRates()に変更します。 1...173174175176177178179180181182183184185186187...347 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
閉じる位置の問題
......
double cena=0;
静的 int isCrossed = 0;
isCrossed = Crossed (k,d);
if(OrderSelect(ticket, SELECT_BY_POS))
{
c=OrderOpenPrice()です。
return(0);
}
if (isCrossed>0)
{
cena=((c-Ask)*10000);
return(0);
total = OrdersTotal();
if(total < 1)
{
if(isCrossed == 1)
{
ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, 1000, cena,
cena , "EMA_CROSS", 12345, 0, Green);
}
....
if(isCrossed == 2)
{
ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, 1000, cena,
cena, "EMA_CROSS", 12345, 0, 赤);
......
一般的なEAは、EMAが交差したときにポジションをクローズし、同時に別のポジションをオープンします。
ポジションは開いたが、閉じようとしない;/。
助けてください
あるポジションを決済し、同じティックで新しいポジションを建てることは可能ですか?
(...)
if(OrdersTotal()!=0) {
(...)
OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), Slippage, Green ); }
if(OrdersTotal()==0) {
OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, Ask - SL * Point, Ask + TP * Point, NULL, Magic, 0, Green); }
(...)
このコード例では、ショートポジションは最初のティックで決済されますが、ロングポジションは即座にオープンされるわけではありません。ロングポジションを開くには、もう1ティック必要です。
よろしくお願いします :-)
はい、可能です。演算子の間にRefreshRates()という関数を 挟むだけです。
......助けてください
みたいですね。私はピエトラです。私のセカンドネームは何ですか?
全コードが分からないと無理です。すみません。
コーディングのヘルプ
EAの最大・最小建値を 知るためのMT4コーディングについて、どなたか教えてください。EAによっていくつかのオープンがあります。
このようなコードを見つけましたが、これは最初と最後の取引の開始を知るためのものです。
double GetLastBuyPrice(int Magic)
{
int total=OrdersTotal()-1;
for (int cnt = total ; cnt >=0 ; cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderSymbol() ==Symbol() && (OrderType() ==OP_BUY)) { (OrderMagicNumber() == Magic && OrderSymbol() ==Symbol() && (OrderType() ==OP_BUY))
{
return(OrderOpenPrice())。
}
return(10000);
}
取引開始時の最高値・最安値を知るためのコードとは?
コード
EAの最大・最小建値を知るためのMT4コーディングについて、どなたか教えてください。EAでオープンしているものがあります。
このようなコードを見つけたのですが、これは最初のトランザクションと最後のトランザクションのオープニングを知るためのものです。
Double opens[1000] = {0};
double maxopen = 0 ;
double minopen = 1000000 ;
// double GetLastBuyPrice(int Magic)
{
int total=OrdersTotal()-1;
for (int cnt = total ; cnt >=0 ; cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderSymbol() ==Symbol() && (OrderType() ==OP_BUY)) { (OrderMagicNumber() == Magic && OrderSymbol() == Symbol() && (OrderType() == OP_BUY))
{
opens[cnt] = OrderOpenPrice() ;
}
}
for ( cnt = 0 ; cnt <= total ; cnt ++ )
{
if ( opens[cnt] > maxopen ) maxopen = opens[cnt] ;
if ( opens[cnt] < minopen ) minopen = opens[cnt] ;
}
}
トランザクションオープニングの最高値/最安値を知るためのコーディング方法は?ハイ。
上記のようにコードを変更してください。
これは他のプロシージャから呼び出すためのものではありません...,
EA のコードの好きなところに置いてください。
OTR
複数の注文を開くためのコードを作成する手助けが必要です。
2つ目の注文を出すためのコードを追加するのに失敗しています。
私は、異なるTPレベルで同じ信号に基づいて2つの注文を開こうとしています。
以下は、最初の注文を開くための私のコードです。
どんな助けでも感謝します。
if(SlowSell<0 && FastSell<0 && PrevFastSell==0)
{
ticket=OrderSend(Symbol(),OP_SELL,LotSize,Bid,Slipage,Bid+StopLoss*Point,Bid-TakeProfit*Point, "MA_Angle_Trader",MagicNumber,0,Red);
if(チケット>0)
{
if(オーダーセレクト(チケット,SELECT_BY_TICKET,MODE_TRADES))Print("SellStop注文が オープンしました:",OrderOpenPrice());
else Print("SellStop注文の開始エラー :",GetLastError())。
return(0);
ticket=OrderSend(Symbol(),OP_SELL,LotSize,Bid,Slipage,Bid+StopLoss*Point,0,「MA_Angle_Trader」MagicNumber,0,Red).を実行します。
if(チケット>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))Print("SellStop注文がオープンしました:",OrderOpenPrice());
else Print("SellStop注文の開始エラー :",GetLastError())。
return(0);
こんにちは
簡単なコーディングのヘルプをお願いします。
1) あるピップ数でトレードをヘッジする。
2) その後、それ以上の取引を無効にする/停止する。
私は手動でヘッジされた取引を閉じるので、それが再びヘッジされないことを確認します。
2つ目の注文を開くためのコードを追加してもうまくいきません。
同じシグナルで、異なるTPレベルの2つの注文を出そうとしています。
以下は、最初の注文を出すための私のコードです。
どんな助けでも感謝します。
if(SlowSell<0 && FastSell<0 && PrevFastSell==0)
{
ticket=OrderSend(Symbol(),OP_SELL,LotSize,Bid,Slipage,Bid+StopLoss*Point,Bid-TakeProfit*Point, "MA_Angle_Trader",MagicNumber,0,Red);
if(チケット>0)
{
if(オーダーセレクト(チケット,SELECT_BY_TICKET,MODE_TRADES))Print("SellStop注文がオープンしました:",OrderOpenPrice());
else Print("SellStop注文の開始エラー :",GetLastError())。
return(0);
ticket=OrderSend(Symbol(),OP_SELL,LotSize,Bid,Slipage,Bid+StopLoss*Point,0,「MA_Angle_Trader」MagicNumber,0,Red).を実行します。
if(チケット>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))Print("SellStop注文がオープンしました:",OrderOpenPrice());
else Print("SellStop注文の開始エラー :",GetLastError())。
return(0);
}最初に置き換える
return(0);
から
RefreshRates()に変更します。