どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 471 1...464465466467468469470471472473474475476477478...1178 新しいコメント Алексей Тарабанов 2014.02.09 20:44 #4701 beginner: ができますが、問題はなぜrates[0].closeができないかです。 推測ですが、まだオブジェクトが形成されていないためです。 Oleg 2014.02.09 20:49 #4702 tara: まだ形成されていないからとしか思えない。 いや、何かの間違いだろう、5のようになるはずだ、それとも私が混乱しているのだろうか? Алексей Тарабанов 2014.02.09 21:00 #4703 beginner: いや、何かの間違いだろう、5のようになるはずだ、それとも私が混乱しているのだろうか? Close[0]が存在しないことを忘れてはいけません、ただ、使い方が違うだけです。 Oleg 2014.02.09 21:03 #4704 Close[0] - 現在の時刻のローソクの終値、および他のすべてのパラメータhigh、low...です。 Vitalie Postolache 2014.02.09 21:06 #4705 tara: Close[0]が存在しないことを忘れてはいけません、ただ、使い方が違うだけです。 ダメダメは存在しない... "スプーンがない" (c) ))) Close[0]=Bidなので・・・。 Алексей Тарабанов 2014.02.09 21:09 #4706 evillive: ダメダメは存在しない... "スプーンがない" ))) Close[0]=Bid、ここで... 私ではなく、Metakwotsに聞くべきでしょう:) Алексей Тарабанов 2014.02.09 21:21 #4707 私は未熟にも、まだ作られていない見積もりへの言及は、アピールの邪魔になると思っています。 Pr0t0ip 2014.02.10 17:31 #4708 こんにちは、次のような問題があります。ログによると、テスト時にOrderModifyが130と出ています。アドバイザーの規約をご紹介します。 //+------------------------------------------------------------------+ //| Test3.mq4 //| ポポフ ウラジミール //| http://vk.com/id143715412 | //+------------------------------------------------------------------+ #property copyright"Popov Vladimir" (ポポフ・ウラジミール) #プロパティリンク "http://vk.com/id143715412" extern double Lots = 0.1; extern int TakeProfit = 250; extern int StopLoss = 100; extern int Slippage = 10; extern string comment = "Tma bot"; extern int Magic = 123; extern string Indi = "インジケーターデータ"; extern string TimeFrame = "現在の時間枠"; extern int HalfLength = 20; extern int Price = PRICE_CLOSE; extern double ATRMultiplier = 2.0; extern inttern ATRPeriod = 100; extern bool Interpolate = true; Double PriceHigh, PriceLow, SL, TP; int ticketです。 //+------------------------------------------------------------------+ //| エキスパート初期化関数 //+------------------------------------------------------------------+ int init() { if (Digits == 3 || Digits == 5) { TakeProfit *= 10; StopLoss *= 10; スリッページ *= 10; } return(0)です。 } //+------------------------------------------------------------------+ //| 専門家による初期化関数 //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0)です。 } //+------------------------------------------------------------------+ //| エキスパートスタート機能 //+------------------------------------------------------------------+ int start() { PriceHigh = iCustom (Symbol (), 0, "Time", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 1, 0)です。 PriceLow = iCustom (Symbol (), 0, "Time", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 2, 0)です。 if (Bid >= PriceHigh && CountSell() == 0) { SL = NormalizeDouble(Bid+StopLoss*Point, Digits)です。 SL = NormalizeDouble(Bid-TakeProfit*Point, Digits)です。 ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, 0, 0, comment, Magic, 0, Red); 仮 { if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES) == true) OrderModify(ticket, OrderOpenPrice(), SL, TP, 0); } } if(Ask <= PriceLow && CountBuy() == 0) { SL = NormalizeDouble(Ask-StopLoss*Point, Digits)です。 SL = NormalizeDouble(Ask+TakeProfit*Point, Digits)です。 ticket = OrderSend(Symbol(), OP_BUY, Lots, Bid, Slippage, 0, 0, comment, Magic, 0, Blue)です。 仮 { if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES) == true) OrderModify(ticket, OrderOpenPrice(), SL, TP, 0); } } if (Ask <= PriceLow && CountSell() > 0) { for(int i=OrdersTotal()-1; i >=0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == true) { if(OrderMagicNumber() == Magic && OrderType() == OP_SELL) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, Black)。 } } } if (Bid >= PriceLow && CountBuy() > 0) { for(i=OrdersTotal()-1; i >=0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == true) { if(OrderMagicNumber() == Magic && OrderType() == OP_BUY) オーダークローズ(OrderTicket(), OrderLots(), Bid, Slippage, Green) } } } return(0)です。 } //+------------------------------------------------------------------+ int CountBuy() { int count = 0; for (int tr = OrdersTotal()-1; tr >= 0; tr --) { OrderSelect(tr, SELECT_BY_POS); if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) { if (OrderType() == OP_BUY) count++です。 } } を返す(カウント)。 } //+------------------------------------------------------------------+ int CountSell() { int count = 0; for (int tr= OrdersTotal()-1; tr >= 0; tr --) { OrderSelect(tr, SELECT_BY_POS); if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) { if (OrderType() == OP_SELL) count++です。 } } を返す(カウント)。 } 初心者の方からの質問 MQL5 MT5 MetaTrader MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 Any rookie question, so Alexander 2014.02.10 17:40 #4709 ここで修正する SL = NormalizeDouble(Ask-StopLoss*Point, Digits); SL = NormalizeDouble(Ask+TakeProfit*Point, Digits); 2番目のケースでは、TPであるべきです Pr0t0ip 2014.02.10 17:43 #4710 おいおい... ロジャーさん、ありがとうございます。 1...464465466467468469470471472473474475476477478...1178 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ができますが、問題はなぜrates[0].closeができないかです。
推測ですが、まだオブジェクトが形成されていないためです。
まだ形成されていないからとしか思えない。
いや、何かの間違いだろう、5のようになるはずだ、それとも私が混乱しているのだろうか?
いや、何かの間違いだろう、5のようになるはずだ、それとも私が混乱しているのだろうか?
Close[0]が存在しないことを忘れてはいけません、ただ、使い方が違うだけです。
ダメダメは存在しない...
"スプーンがない" (c) )))
Close[0]=Bidなので・・・。
ダメダメは存在しない...
"スプーンがない" )))
Close[0]=Bid、ここで...
私ではなく、Metakwotsに聞くべきでしょう:)
こんにちは、次のような問題があります。ログによると、テスト時にOrderModifyが130と出ています。アドバイザーの規約をご紹介します。
//+------------------------------------------------------------------+
//| Test3.mq4
//| ポポフ ウラジミール
//| http://vk.com/id143715412 |
//+------------------------------------------------------------------+
#property copyright"Popov Vladimir" (ポポフ・ウラジミール)
#プロパティリンク "http://vk.com/id143715412"
extern double Lots = 0.1;
extern int TakeProfit = 250;
extern int StopLoss = 100;
extern int Slippage = 10;
extern string comment = "Tma bot";
extern int Magic = 123;
extern string Indi = "インジケーターデータ";
extern string TimeFrame = "現在の時間枠";
extern int HalfLength = 20;
extern int Price = PRICE_CLOSE;
extern double ATRMultiplier = 2.0;
extern inttern ATRPeriod = 100;
extern bool Interpolate = true;
Double PriceHigh, PriceLow, SL, TP;
int ticketです。
//+------------------------------------------------------------------+
//| エキスパート初期化関数
//+------------------------------------------------------------------+
int init()
{
if (Digits == 3 || Digits == 5)
{
TakeProfit *= 10;
StopLoss *= 10;
スリッページ *= 10;
}
return(0)です。
}
//+------------------------------------------------------------------+
//| 専門家による初期化関数
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0)です。
}
//+------------------------------------------------------------------+
//| エキスパートスタート機能
//+------------------------------------------------------------------+
int start()
{
PriceHigh = iCustom (Symbol (), 0, "Time", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 1, 0)です。
PriceLow = iCustom (Symbol (), 0, "Time", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 2, 0)です。
if (Bid >= PriceHigh && CountSell() == 0)
{
SL = NormalizeDouble(Bid+StopLoss*Point, Digits)です。
SL = NormalizeDouble(Bid-TakeProfit*Point, Digits)です。
ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, 0, 0, comment, Magic, 0, Red);
仮
{
if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES) == true)
OrderModify(ticket, OrderOpenPrice(), SL, TP, 0);
}
}
if(Ask <= PriceLow && CountBuy() == 0)
{
SL = NormalizeDouble(Ask-StopLoss*Point, Digits)です。
SL = NormalizeDouble(Ask+TakeProfit*Point, Digits)です。
ticket = OrderSend(Symbol(), OP_BUY, Lots, Bid, Slippage, 0, 0, comment, Magic, 0, Blue)です。
仮
{
if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES) == true)
OrderModify(ticket, OrderOpenPrice(), SL, TP, 0);
}
}
if (Ask <= PriceLow && CountSell() > 0)
{
for(int i=OrdersTotal()-1; i >=0; i--)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == true)
{
if(OrderMagicNumber() == Magic && OrderType() == OP_SELL)
OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, Black)。
}
}
}
if (Bid >= PriceLow && CountBuy() > 0)
{
for(i=OrdersTotal()-1; i >=0; i--)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == true)
{
if(OrderMagicNumber() == Magic && OrderType() == OP_BUY)
オーダークローズ(OrderTicket(), OrderLots(), Bid, Slippage, Green)
}
}
}
return(0)です。
}
//+------------------------------------------------------------------+
int CountBuy()
{
int count = 0;
for (int tr = OrdersTotal()-1; tr >= 0; tr --)
{
OrderSelect(tr, SELECT_BY_POS);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
{
if (OrderType() == OP_BUY)
count++です。
}
}
を返す(カウント)。
}
//+------------------------------------------------------------------+
int CountSell()
{
int count = 0;
for (int tr= OrdersTotal()-1; tr >= 0; tr --)
{
OrderSelect(tr, SELECT_BY_POS);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
{
if (OrderType() == OP_SELL)
count++です。
}
}
を返す(カウント)。
}
ここで修正する
2番目のケースでは、TPであるべきですおいおい...
ロジャーさん、ありがとうございます。