MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 80 1...737475767778798081828384858687...1953 新しいコメント Gevorg Hakobyan 2017.01.17 13:45 #791 Artyom Trishkin:別のシンボルのテスターで?または、別のシンボルでのデモ/リアルで?それともこのシンボルのテスターで?または、このシンボル上のデモ/リアルで?なんで自分の中から全部出すんだ? 何が言いたいんだ?どこで試したか、どんな違いがあるのでしょうか?問題はPoint=0かどうかです。また、もしできるのであれば、どのようにコードを書けば、ゼロによる除算という エラーに遭遇しないのでしょうか? Alekseu Fedotov 2017.01.17 13:53 #792 LuckySith:すみません、すごくオタクなんですけど......よくわからないんです。 たぶん、あなたはいくつかのコードで最も単純なインジケータを持って、私は理解するためのアナログを持っている?だって、見つからなかったんだもん。バーの真ん中にドットを置く、とてもシンプルなコードを持っています。カーソルを合わせるとテキストが表示されるようにするにはどうすればいいのでしょうか?ボックスでも何でもいいです。#property indicator_chart_window#property indicator_buffers 1#property indicator_color1 Black//---- input parameters//---- buffersdouble ExtMapBuffer1[];//+------------------------------------------------------------------+//| Custom indicator initialization function |//+------------------------------------------------------------------+int init() {//---- indicators SetIndexStyle(0,DRAW_ARROW); SetIndexArrow(0,159); SetIndexBuffer(0,ExtMapBuffer1); SetIndexEmptyValue(0,0.0);//---- return(0); }//+------------------------------------------------------------------+//| Custom indicator deinitialization function |//+------------------------------------------------------------------+int deinit() {//----//---- return(0); }//+------------------------------------------------------------------+//| Custom indicator iteration function |//+------------------------------------------------------------------+int start() { int counted_bars=IndicatorCounted(); int limit=Bars-counted_bars;//---- for(int i=limit; i>=0; i--) { double fabody0 = fabs(Close[i]-Open[i]); double fabody1 = fabs(Close[i+1]-Open[i+1]); double fabody2 = fabs(Close[i+2]-Open[i+2]); double fabody3 = fabs(Close[i+3]-Open[i+3]); double fabody4 = fabs(Close[i+4]-Open[i+4]); double fabody5 = fabs(Close[i+5]-Open[i+5]); double fabody6 = fabs(Close[i+6]-Open[i+6]); double fabody7 = fabs(Close[i+7]-Open[i+7]); if((fabody0>fabody1) && (fabody0>fabody2) && (fabody0>fabody3) && (fabody0>fabody4) && (fabody0>fabody5) && (fabody0>fabody6) &&(Volume[i]>Volume[i+1])) { if (((Close[i]>Open[i])&&(Low[i]+(High[i]-Low[i])/2>Low[i+1]+(High[i+1]-Low[i+1])*0.9))||((Close[i]<Open[i])&&(Low[i]+(High[i]-Low[i])/2<Low[i+1]+(High[i+1]-Low[i+1])*0.1))) ExtMapBuffer1[i]=(iHigh(Symbol(),0,i)+iLow(Symbol(),0,i))/2; } }//---- return(0); } トライ ファイル: gmxdk8j.mq4 6 kb Artyom Trishkin 2017.01.17 14:00 #793 Gevorg Hakobyan: 何が言いたいんだ?どこで試したか、どんな違いがあるのでしょうか?問題はPoint=0かどうかです。また、もしできるのであれば、ゼロによる除算という エラーに遭遇しないように、どのように正しいコードを書けばいいのでしょうか? お好きなようにどうぞ。そこで、分周器をゼロにしてから分周することを確認します。結果ではなく原因に興味があるのかと思いきや、適当な松葉杖。 Alexey Viktorov 2017.01.17 14:02 #794 Artyom Trishkin: お好きなようにどうぞ。そこで、分周器をゼロにしてから分周することを確認します。結果ではなく原因に興味があるのかと思いきや、適当な松葉杖。 台詞を全部読んだわけではありませんが、小数点以下5桁目の印刷に問題があるのでは? Artyom Trishkin 2017.01.17 14:05 #795 Alexey Viktorov: 台詞を全部読んだわけではありませんが、小数点以下5桁目の印刷に問題があるのではないかと思います。 いいえ、Point()で割って、ゼロによる除算を 取得します。だから、シンボルデータをどこでどうやって取得するのか、まとまった答えが欲しいのです。 Gevorg Hakobyan 2017.01.17 14:13 #796 Artyom Trishkin: いいえ、Point()で割って、ゼロ除算を 取得します。シンボルのデータをどこでどのように取るのか、明確な答えが欲しいのです。if(v=="NZD"){h=(iClose("NZDUSD",p,b)-iOpen("NZDUSD",p,b))/MarketInfo("NZDUSD",MODE_POINT)+...(iOpen("EURNZD",p,b)-iClose("EURNZD",p,b))/MarketInfo("EURNZD",MODE_POINT)+...(iOpen("GBPNZD",p,b)-iClose("GBPNZD",p,b))/MarketInfo("GBPNZD",MODE_POINT)+...(iOpen("AUDNZD",p,b)-iClose("AUDNZD",p,b))/MarketInfo("AUDNZD",MODE_POINT)+ (iOpen("AUDNZD",p,b)))(iClose("NZDJPY",p,b)-iOpen("NZDJPY",p,b))/MarketInfo("NZDJPY",MODE_POINT)+ ※MarketInfo("NZDJPY",MODE_POINT) を参照。(iClose("NZDCAD",p,b)-iOpen("NZDCAD",p,b))/MarketInfo("NZDCAD",MODE_POINT)+...(iClose("NZDCHF",p,b)-iOpen("NZDCHF",p,b))/MarketInfo("NZDCHF",MODE_POINT) になります。} Gevorg Hakobyan 2017.01.17 14:15 #797 Alexey Viktorov: 台詞を全部読んだわけではありませんが、小数点以下5桁目の印刷に問題があるのでは? それが問題なのでしょうか? Alexey Viktorov 2017.01.17 14:17 #798 Gevorg Hakobyan: それが問題なのでしょうか? いいえ、印刷時やアラートで5桁目が見えなくなる程度です。 LuckySith 2017.01.17 14:22 #799 Alekseu Fedotov: トライ 一般に、これは必要なことですが、問題は記述がかなり大きくなり、この方法では文字通り2、3の単語しか書けず、残りは表示されないことです。 Sile Si 2017.01.17 18:13 #800 こんにちは。 よろしくお願いします。 現在、1、2、3、4、5...の順にロットが増えています。 注文ごとではなく、1、1、1、2、2、3、3、3...と 3個単位でロットを増やしてほしいです。 extern double LotStop = 0.01;extern double Plus_LotStop = 0.01; extern double Plus_N_ORD = 3; //каждые N ордеровvoid OnTick() {//--- for (int i=1; i<=OrdersStop; i++) { if((Close[1]<Open[1]&&Close[2]>Open[2]&&NumberOfPositions(Symbol(), -1,_Magic)<1)) { OPENORDER (OP_BUYSTOP,PriceBS,LOTs,_Magic,i); numB++; PriceBS = NormalizeDouble(PriceBS+Step_Stop*Point,Digits); OPENORDER (OP_SELLSTOP,PriceSS,LOTs,_Magic,i); numS++; PriceSS = NormalizeDouble(PriceSS-Step_Stop*Point,Digits); } LOTs=LOTs+Plus_LotStop; } } Any questions from newcomers [アーカイブ!】どんなルーキーの質問でも、フォーラムを散らかさないように。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 2. 初心者の方からの質問 MQL4 MT4 MetaTrader 1...737475767778798081828384858687...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
別のシンボルのテスターで?または、別のシンボルでのデモ/リアルで?それともこのシンボルのテスターで?または、このシンボル上のデモ/リアルで?
なんで自分の中から全部出すんだ?
すみません、すごくオタクなんですけど......よくわからないんです。
たぶん、あなたはいくつかのコードで最も単純なインジケータを持って、私は理解するためのアナログを持っている?だって、見つからなかったんだもん。
バーの真ん中にドットを置く、とてもシンプルなコードを持っています。カーソルを合わせるとテキストが表示されるようにするにはどうすればいいのでしょうか?ボックスでも何でもいいです。
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Black
//---- input parameters
//---- buffers
double ExtMapBuffer1[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,159);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexEmptyValue(0,0.0);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
int limit=Bars-counted_bars;
//----
for(int i=limit; i>=0; i--)
{
double fabody0 = fabs(Close[i]-Open[i]);
double fabody1 = fabs(Close[i+1]-Open[i+1]);
double fabody2 = fabs(Close[i+2]-Open[i+2]);
double fabody3 = fabs(Close[i+3]-Open[i+3]);
double fabody4 = fabs(Close[i+4]-Open[i+4]);
double fabody5 = fabs(Close[i+5]-Open[i+5]);
double fabody6 = fabs(Close[i+6]-Open[i+6]);
double fabody7 = fabs(Close[i+7]-Open[i+7]);
if((fabody0>fabody1) && (fabody0>fabody2) && (fabody0>fabody3) && (fabody0>fabody4) && (fabody0>fabody5) && (fabody0>fabody6) &&(Volume[i]>Volume[i+1]))
{
if (((Close[i]>Open[i])&&(Low[i]+(High[i]-Low[i])/2>Low[i+1]+(High[i+1]-Low[i+1])*0.9))||((Close[i]<Open[i])&&(Low[i]+(High[i]-Low[i])/2<Low[i+1]+(High[i+1]-Low[i+1])*0.1)))
ExtMapBuffer1[i]=(iHigh(Symbol(),0,i)+iLow(Symbol(),0,i))/2;
}
}
//----
return(0);
}
何が言いたいんだ?どこで試したか、どんな違いがあるのでしょうか?問題はPoint=0かどうかです。また、もしできるのであれば、ゼロによる除算という エラーに遭遇しないように、どのように正しいコードを書けばいいのでしょうか?
お好きなようにどうぞ。
台詞を全部読んだわけではありませんが、小数点以下5桁目の印刷に問題があるのではないかと思います。
いいえ、Point()で割って、ゼロ除算を 取得します。
台詞を全部読んだわけではありませんが、小数点以下5桁目の印刷に問題があるのでは?
それが問題なのでしょうか?
トライ
こんにちは。
よろしくお願いします。
現在、1、2、3、4、5...の順にロットが増えています。
注文ごとではなく、1、1、1、2、2、3、3、3...と 3個単位でロットを増やしてほしいです。
extern double Plus_LotStop = 0.01;
extern double Plus_N_ORD = 3; //каждые N ордеров
void OnTick()
{
//---
for (int i=1; i<=OrdersStop; i++)
{
if((Close[1]<Open[1]&&Close[2]>Open[2]&&NumberOfPositions(Symbol(), -1,_Magic)<1))
{
OPENORDER (OP_BUYSTOP,PriceBS,LOTs,_Magic,i);
numB++;
PriceBS = NormalizeDouble(PriceBS+Step_Stop*Point,Digits);
OPENORDER (OP_SELLSTOP,PriceSS,LOTs,_Magic,i);
numS++;
PriceSS = NormalizeDouble(PriceSS-Step_Stop*Point,Digits);
}
LOTs=LOTs+Plus_LotStop;
}
}