//+------------------------------------------------------------------+ //| エキスパート初期化関数 //+------------------------------------------------------------------+ double lot=1です。 extern double sl=30; extern double tp=30; extern double koeff=2; int pon=1; int vtor=0; int sred=3; int hetver=0; int patn=0;
日足チャートに矢印を 描くインジケータが必要です。15分足のEMAの使い方に問題があるのだと思いますが、15分足のEMAではすべてがうまくいきます。15分足から計算し、日足チャートに矢印を描くインジケータを作ることは可能でしょうか?
以下は、コードそのものです。
dist = MathAbs((NormalizeDouble(Bid,Digits)-
NormalizeDouble(ObjectGetValueByShift(TrendLineName,0),Digits))*MathPow(10,Digits));
このコードでは、現在の価格水準からトレンドまでの距離をTrendLineNameで求めますが、問題があります。 どうやらトレンドは半分ずつ不正確に伝達されるため、価格までの距離が半分ごとに全く異なるのです。この問題を回避する方法は?H1にのみトレンドラインが表示されていても、オープンタイムW1では(実際にはどのオープンタイムでも)計算された距離は同じであることが理想的です。
上の引用文の質問に関連して、もう一つ質問です。チャート上で開いている時間枠とは異なる時間枠をシミュレートするにはどうしたらよいでしょうか?I.e.例えば、D1が開いている状態で、M30で計算すればいいのでしょうか?
//+------------------------------------------------------------------+
//| sobstvennyi_probnyi_sovetnic.mq4 |。
//| アントニコ
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright"Antonico"
#プロパティリンク "http://www.metaquotes.net"
//+------------------------------------------------------------------+
//| エキスパート初期化関数
//+------------------------------------------------------------------+
double lot=1です。
extern double sl=30;
extern double tp=30;
extern double koeff=2;
int pon=1;
int vtor=0;
int sred=3;
int hetver=0;
int patn=0;
int init()
{
//----
//----
return(0)です。
}
//+------------------------------------------------------------------+
//| 専門家による初期化関数
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0)です。
}
//+------------------------------------------------------------------+
//| エキスパートスタート機能
//+------------------------------------------------------------------+
int start()
{ int otkrord=OrdersTotal();
if (DayOfWeek()==pon || DayOfWeek()==vtor || DayOfWeek()==sred || DayOfWeek()==hetver || DayOfWeek()==patn || DayOfWeek()==6 || DayOfWeek()==0 || otkrord >0) return(0) とする。
if(OrdersHistoryTotal()==0)
{lot=1;}。
if(OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY))
{
if (OrderProfit()>0)
{
lot=1です。
}
if (OrderProfit()<=0))
{
lot=OrderLots()*koeff; // 2倍してください。
}
}
int h=TimeHour(TimeCurrent())。
int m=TimeMinute(TimeCurrent());
int s=TimeSeconds(TimeCurrent());
double zena0=Open[3];
double zena01=Open[2];
if (h==1 && m==00 && s==01 && zena0<zena01 )
{OrderSend(Symbol()、OP_BUY、lot、Ask、3、Bid-sl*Point、Ask+tp*Point、""、0、0、緑);}; }。
if (h==1 && m==00 && s==01 && zena0>zena01)
{OrderSend(Symbol()、OP_SELL、lot、Bid、3、Ask+sl*Point、Bid-tp*Point、""、0、0、赤);}; }。
}
{if(OrdersHistoryTotal()==0)
{lot=1;}。
if(OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY))
{
if (OrderProfit()>0)
{
lot=1です。
}
if (OrderProfit()<=0))
{
lot=OrderLots()*koeff; // 負けトレードの後に2倍する。
}
}
double zena1=Open[5];
double zena11=Open[4];
if (h==3 && m==00 && s==01 && zena1>zena11)
{
OrderSend(Symbol(), OP_BUY,lot,Ask,3,Bid-sl*Point,Ask+tp*Point,"",0,0,Green);} ←クリックすると拡大します。
if (h==14 && m==00 && s==01 && zena1<zena11)
{OrderSend(Symbol()、OP_SELL、lot、Bid、3、Ask+sl*Point、Bid-tp*Point、""、0、0、赤);}; }。
}
}
return(0)です。
}
//+------------------------------------------------------------------+
文字(文字列)をASCIIコードに 変換する方法を教えてください。
大雑把に言うと、CharToStr() の逆バージョンが必要です。
文字(文字列)をASCIIコードに 変換する方法を教えてください。
大雑把に言うと、CharToStr() の逆バージョンが必要です。
こんにちは。
help me need code
カレントチャート
新しいバーが 開くと、注文を開始する必要があります
まさに新バー
こんにちは。
help me need code
カレントチャート
新しいバーが開くと、注文を開始する必要があります
まさに新バー
問題なし!
必要なコードを書き始める。困ったときは、質問したり、書いたコードの一部を見せたりすれば、経験豊富な仲間がどこが悪かったか教えてくれるでしょう。
皆さん、こんにちは。
質問があります。テスターでは、例えば時間足チャートを見ると、週は00:00から始まっています。外為ウィークは日本時間の20時15分に始まることが知られています。つまり、テスターの時間GMTで1時間から取得するために、大雑把に言えば、prebovlyayut 20時間とmoduloを24で割る、でしょうか?