コーディングのヘルプ - ページ 201 1...194195196197198199200201202203204205206207208...786 新しいコメント Mladen Rakic 2013.11.27 11:48 #2001 Slow Moe: こんにちは、このインディケータを書き換えて、矢印だけを表示し、ローソク足で表示させることは可能でしょうか?誰かこの件で私を助けてくれませんか、あるいは私のためにそれをコード化してくれませんか?リガード スロー fxmtn-test.mq4 スロー こんな感じで試してみてください。 ファイル: fxmtn-test_1.mq4 4 kb Slow Moe 2013.11.27 16:19 #2002 ありがとうございます。 extern int arrowDistance = XXX;」もどうにかして有効化したいのですが。 それは今、選択メニューに表示されますが、距離が変化していない。どこに*arrowDistanceを置くべきですか? それとも私が完全に間違っているのでしょうか? 私はいくつかの場所にそれを置くが、それは私に多くの点を与えただけで、より多くの距離を与えなかった...。 コードを理解しようとしているnoob、そしていくつかの光を期待しています。 Slow Moe 2013.11.27 23:28 #2003 今はこんな感じでやってました. if (AboveBuff > 24.0) ShortBuff = High+ (Point*arrowDistance /2); if (BelowBuff < -24.0) LongBuffe = Low- (Point*arrowDistance /2); これは正しい方法なのでしょうか?動作するからといって、間違っていることもある William Snyder 2013.11.27 23:44 #2004 Slow Moe: 今はこんな感じでやってました.if (AboveBuff > 24.0) ShortBuff = High+ (Point*arrowDistance /2); if (BelowBuff < -24.0) LongBuffe = Low- (Point*arrowDistance /2); これでいいのでしょうか?うまくいったからといって、間違っている場合もあります これでうまくいくはずですが、もう一つ、次のような方法もあります。 LongBuffe = Low-arrowDistance*iATR(NULL,0,20,i) および ShortBuff = High+arrowDistance**iATR(NULL,0,20,i) とすることもできます。 Mladen Rakic 2013.11.28 07:22 #2005 遅い。 iATR()モードを使うのがベターです。時間枠を変えれば、私が言っていることがわかるでしょう。高値や安値からの矢印の距離が固定されている場合、視覚的に高い時間枠で問題が発生します(ある時間枠では乱雑に見えます)。固定距離を使用する代わりにiATR()を使用すると、この問題が解決されます。 Slow Moe 2013.11.28 10:40 #2006 mrtools,mladenの動作がとても良くなりました。 最後のインジケータが制御 できないのですが・・・。 SignalGap = MathCeil(iATR(NULL,0,50,0)/Point) としました。 50を変更すると距離が変わるので、ここが正しい場所だと思った。しかし、arrowDistanceではうまくいきません。 Mladen Rakic 2013.11.28 10:57 #2007 Slow Moe: mrtools,mladenの動作は本当に良くなりました。もう一つ、制御できないインジケータがあるのですが・・・。 SignalGap = MathCeil(iATR(NULL,0,50,0)/Point) に変更する。 50を変更すると距離が変わるので、ここが正しい場所だと思いました。しかし、私がテストしたものは、arrowDistanceでは動作しませんでした。 スロー 矢印の距離のためにATRを使用している場合、その距離を修正する最良の方法は、おそらく一種の乗数です。例えば arrowPrice = High+iATR(NULL,0,50,0)*arrowDistance; arrowDistanceはdoubleとして定義され、小数も可能です(したがって、0.5のような値も、10.5のような値も使用できます)。atrの周期を変えても距離は大きく変わりません(より長い範囲の平均を考慮するだけです) schmidt 2013.11.29 09:21 #2008 他のインジケータから値を取得しようとする こんにちは、comです。 私は初めて自分のインジケータを書こうとしていて、このサイトから手に入れた既存のインジケータの値も使いたいと思っています。 私は、このサイトから得た既存のインジケーターの値も使いたいと思っています。 私も自分のインジケータで全コードを取得しようとしましたが、うまくいきませんでした。 何かお手伝いいただけると幸いです。 thx bob #property copyright "fxfariz" #property link "fxfariz@gmail.com" #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 Blue //Red //Aqua #property indicator_color2 Red extern int SSP=7; extern double Kmax=50.6; //24 21.6 21.6 extern int CountBars=300; extern int myPeriod = 0 ; //---- buffers double ExtMapBuffer1[]; double ExtMapBuffer2[]; double ExtHBuffer1[]; double ExtHBuffer2[]; int xPeriod ; //+------------------------------------------------------------------+ string TimeFrameToString(int tf) { string tfs; switch(tf) { case PERIOD_M1: tfs="M1" ; break; case PERIOD_M5: tfs="M5" ; break; case PERIOD_M15: tfs="M15" ; break; case PERIOD_M30: tfs="M30" ; break; case PERIOD_H1: tfs="H1" ; break; case PERIOD_H4: tfs="H4" ; break; case PERIOD_D1: tfs="D1" ; break; case PERIOD_W1: tfs="W1" ; break; case PERIOD_MN1: tfs="MN1"; } return(tfs); } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators IndicatorBuffers(4); SetIndexStyle(0,DRAW_HISTOGRAM,0,4); //Red SetIndexBuffer(0,ExtHBuffer1); SetIndexStyle(1,DRAW_HISTOGRAM,0,4); //Lime SetIndexBuffer(1,ExtHBuffer2); SetIndexBuffer(2,ExtMapBuffer1); SetIndexBuffer(3,ExtMapBuffer2); if(myPeriod==0){xPeriod=Period();} {xPeriod=myPeriod;} string tPeriod = TimeFrameToString(xPeriod) ; IndicatorShortName(tPeriod + " Trade What You see ("+SSP+")"); //---- return(0); } //+------------------------------------------------------------------+ //| Custor indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { if (CountBars>=Bars) CountBars=Bars; SetIndexDrawBegin(0,Bars-CountBars+SSP); SetIndexDrawBegin(1,Bars-CountBars+SSP); int i, counted_bars=IndicatorCounted(); double SsMax, SsMin, smin, smax; if(Bars<=SSP+1) return(0); if(counted_bars<SSP+1) { for(i=1;i<=SSP;i++) ExtMapBuffer1[CountBars-i]=0.0; for(i=1;i<=SSP;i++) ExtMapBuffer2[CountBars-i]=0.0; } for(i=CountBars-SSP;i>=0;i--) { SsMax = High; SsMin = Low[Lowest(NULL,xPeriod,MODE_LOW,SSP,i-SSP+1)]; smax = SsMax-(SsMax-SsMin)*Kmax/100; ExtMapBuffer1=smax; ExtMapBuffer2=smax; } for(int b=CountBars-SSP;b>=0;b--) { if(ExtMapBuffer1>ExtMapBuffer2) { ExtHBuffer1=1; ExtHBuffer2=0; } else { ExtHBuffer1=0; ExtHBuffer2=1; } } return(0); } Coding help Could someone help me マルチタイムフレーム・インディケーター Mladen Rakic 2013.11.29 09:44 #2009 BobMorane1000: こんにちは、comです。私は初めて自分のインジケータを書こうとしているのですが、このサイトから得た既存のインジケータの値も使いたいと思っています。 私は、このサイトから得た既存のインジケーターの値も使いたいと思っています。 私も自分のインジケータで全コードを取得しようとしましたが、うまくいきませんでした。 何かお手伝いいただけると幸いです。 thx bob #property copyright "fxfariz" #property link "fxfariz@gmail.com" #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 Blue //Red //Aqua #property indicator_color2 Red extern int SSP=7; extern double Kmax=50.6; //24 21.6 21.6 extern int CountBars=300; extern int myPeriod = 0 ; //---- buffers double ExtMapBuffer1[]; double ExtMapBuffer2[]; double ExtHBuffer1[]; double ExtHBuffer2[]; int xPeriod ; //+------------------------------------------------------------------+ string TimeFrameToString(int tf) { string tfs; switch(tf) { case PERIOD_M1: tfs="M1" ; break; case PERIOD_M5: tfs="M5" ; break; case PERIOD_M15: tfs="M15" ; break; case PERIOD_M30: tfs="M30" ; break; case PERIOD_H1: tfs="H1" ; break; case PERIOD_H4: tfs="H4" ; break; case PERIOD_D1: tfs="D1" ; break; case PERIOD_W1: tfs="W1" ; break; case PERIOD_MN1: tfs="MN1"; } return(tfs); } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators IndicatorBuffers(4); SetIndexStyle(0,DRAW_HISTOGRAM,0,4); //Red SetIndexBuffer(0,ExtHBuffer1); SetIndexStyle(1,DRAW_HISTOGRAM,0,4); //Lime SetIndexBuffer(1,ExtHBuffer2); SetIndexBuffer(2,ExtMapBuffer1); SetIndexBuffer(3,ExtMapBuffer2); if(myPeriod==0){xPeriod=Period();} {xPeriod=myPeriod;} string tPeriod = TimeFrameToString(xPeriod) ; IndicatorShortName(tPeriod + " Trade What You see ("+SSP+")"); //---- return(0); } //+------------------------------------------------------------------+ //| Custor indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { if (CountBars>=Bars) CountBars=Bars; SetIndexDrawBegin(0,Bars-CountBars+SSP); SetIndexDrawBegin(1,Bars-CountBars+SSP); int i, counted_bars=IndicatorCounted(); double SsMax, SsMin, smin, smax; if(Bars<=SSP+1) return(0); if(counted_bars<SSP+1) { for(i=1;i<=SSP;i++) ExtMapBuffer1[CountBars-i]=0.0; for(i=1;i<=SSP;i++) ExtMapBuffer2[CountBars-i]=0.0; } for(i=CountBars-SSP;i>=0;i--) { SsMax = High; SsMin = Low[Lowest(NULL,xPeriod,MODE_LOW,SSP,i-SSP+1)]; smax = SsMax-(SsMax-SsMin)*Kmax/100; ExtMapBuffer1=smax; ExtMapBuffer2=smax; } for(int b=CountBars-SSP;b>=0;b--) { if(ExtMapBuffer1>ExtMapBuffer2) { ExtHBuffer1=1; ExtHBuffer2=0; } else { ExtHBuffer1=0; ExtHBuffer2=1; } } return(0); } BobMorane1000 このようなことができるかもしれません。 bool blueValue = (iCustom(NULL,0,"indicatorNameHere",SSP,Kmax,0,0)!=0); bool redValue = (iCustom(NULL,0,"indicatorNameHere",SSP,Kmax,1,0)!=0); でも、気をつけてください。このインジケータはスーパーシグナルインジケータのバリエーションで、スーパーシグナルインジケータは再計算(リペイント)するんだ。 schmidt 2013.11.29 10:09 #2010 ありがとうございました、そして、警告をありがとうございました^^、これから試してみます. 1...194195196197198199200201202203204205206207208...786 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんにちは、このインディケータを書き換えて、矢印だけを表示し、ローソク足で表示させることは可能でしょうか?誰かこの件で私を助けてくれませんか、あるいは私のためにそれをコード化してくれませんか?
リガード
スロー
fxmtn-test.mq4スロー
こんな感じで試してみてください。
ありがとうございます。
extern int arrowDistance = XXX;」もどうにかして有効化したいのですが。
それは今、選択メニューに表示されますが、距離が変化していない。どこに*arrowDistanceを置くべきですか?
それとも私が完全に間違っているのでしょうか?
私はいくつかの場所にそれを置くが、それは私に多くの点を与えただけで、より多くの距離を与えなかった...。
コードを理解しようとしているnoob、そしていくつかの光を期待しています。
今はこんな感じでやってました.
if (AboveBuff > 24.0) ShortBuff = High+ (Point*arrowDistance /2);
if (BelowBuff < -24.0) LongBuffe = Low- (Point*arrowDistance /2);
これは正しい方法なのでしょうか?動作するからといって、間違っていることもある
今はこんな感じでやってました.
if (AboveBuff > 24.0) ShortBuff = High+ (Point*arrowDistance /2);
if (BelowBuff < -24.0) LongBuffe = Low- (Point*arrowDistance /2);
これでいいのでしょうか?うまくいったからといって、間違っている場合もありますこれでうまくいくはずですが、もう一つ、次のような方法もあります。
LongBuffe = Low-arrowDistance*iATR(NULL,0,20,i) および ShortBuff = High+arrowDistance**iATR(NULL,0,20,i) とすることもできます。
遅い。
iATR()モードを使うのがベターです。時間枠を変えれば、私が言っていることがわかるでしょう。高値や安値からの矢印の距離が固定されている場合、視覚的に高い時間枠で問題が発生します(ある時間枠では乱雑に見えます)。固定距離を使用する代わりにiATR()を使用すると、この問題が解決されます。
mrtools,mladenの動作がとても良くなりました。
最後のインジケータが制御 できないのですが・・・。
SignalGap = MathCeil(iATR(NULL,0,50,0)/Point) としました。
50を変更すると距離が変わるので、ここが正しい場所だと思った。しかし、arrowDistanceではうまくいきません。
mrtools,mladenの動作は本当に良くなりました。
もう一つ、制御できないインジケータがあるのですが・・・。
SignalGap = MathCeil(iATR(NULL,0,50,0)/Point) に変更する。
50を変更すると距離が変わるので、ここが正しい場所だと思いました。しかし、私がテストしたものは、arrowDistanceでは動作しませんでした。スロー
矢印の距離のためにATRを使用している場合、その距離を修正する最良の方法は、おそらく一種の乗数です。例えば
arrowPrice = High+iATR(NULL,0,50,0)*arrowDistance;
arrowDistanceはdoubleとして定義され、小数も可能です(したがって、0.5のような値も、10.5のような値も使用できます)。atrの周期を変えても距離は大きく変わりません(より長い範囲の平均を考慮するだけです)
他のインジケータから値を取得しようとする
こんにちは、comです。
私は初めて自分のインジケータを書こうとしていて、このサイトから手に入れた既存のインジケータの値も使いたいと思っています。
私は、このサイトから得た既存のインジケーターの値も使いたいと思っています。
私も自分のインジケータで全コードを取得しようとしましたが、うまくいきませんでした。
何かお手伝いいただけると幸いです。
thx bob
#property link "fxfariz@gmail.com"
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Blue //Red //Aqua
#property indicator_color2 Red
extern int SSP=7;
extern double Kmax=50.6; //24 21.6 21.6
extern int CountBars=300;
extern int myPeriod = 0 ;
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtHBuffer1[];
double ExtHBuffer2[];
int xPeriod ;
//+------------------------------------------------------------------+
string TimeFrameToString(int tf)
{
string tfs;
switch(tf) {
case PERIOD_M1: tfs="M1" ; break;
case PERIOD_M5: tfs="M5" ; break;
case PERIOD_M15: tfs="M15" ; break;
case PERIOD_M30: tfs="M30" ; break;
case PERIOD_H1: tfs="H1" ; break;
case PERIOD_H4: tfs="H4" ; break;
case PERIOD_D1: tfs="D1" ; break;
case PERIOD_W1: tfs="W1" ; break;
case PERIOD_MN1: tfs="MN1";
}
return(tfs);
}
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
IndicatorBuffers(4);
SetIndexStyle(0,DRAW_HISTOGRAM,0,4); //Red
SetIndexBuffer(0,ExtHBuffer1);
SetIndexStyle(1,DRAW_HISTOGRAM,0,4); //Lime
SetIndexBuffer(1,ExtHBuffer2);
SetIndexBuffer(2,ExtMapBuffer1);
SetIndexBuffer(3,ExtMapBuffer2);
if(myPeriod==0){xPeriod=Period();} {xPeriod=myPeriod;}
string tPeriod = TimeFrameToString(xPeriod) ;
IndicatorShortName(tPeriod + " Trade What You see ("+SSP+")");
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
if (CountBars>=Bars) CountBars=Bars;
SetIndexDrawBegin(0,Bars-CountBars+SSP);
SetIndexDrawBegin(1,Bars-CountBars+SSP);
int i, counted_bars=IndicatorCounted();
double SsMax, SsMin, smin, smax;
if(Bars<=SSP+1) return(0);
if(counted_bars<SSP+1)
{
for(i=1;i<=SSP;i++) ExtMapBuffer1[CountBars-i]=0.0;
for(i=1;i<=SSP;i++) ExtMapBuffer2[CountBars-i]=0.0;
}
for(i=CountBars-SSP;i>=0;i--) {
SsMax = High;
SsMin = Low[Lowest(NULL,xPeriod,MODE_LOW,SSP,i-SSP+1)];
smax = SsMax-(SsMax-SsMin)*Kmax/100;
ExtMapBuffer1=smax;
ExtMapBuffer2=smax;
}
for(int b=CountBars-SSP;b>=0;b--)
{
if(ExtMapBuffer1>ExtMapBuffer2)
{
ExtHBuffer1=1;
ExtHBuffer2=0;
}
else
{
ExtHBuffer1=0;
ExtHBuffer2=1;
}
}
return(0);
}こんにちは、comです。
私は初めて自分のインジケータを書こうとしているのですが、このサイトから得た既存のインジケータの値も使いたいと思っています。
私は、このサイトから得た既存のインジケーターの値も使いたいと思っています。
私も自分のインジケータで全コードを取得しようとしましたが、うまくいきませんでした。
何かお手伝いいただけると幸いです。
thx bob
#property link "fxfariz@gmail.com"
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Blue //Red //Aqua
#property indicator_color2 Red
extern int SSP=7;
extern double Kmax=50.6; //24 21.6 21.6
extern int CountBars=300;
extern int myPeriod = 0 ;
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtHBuffer1[];
double ExtHBuffer2[];
int xPeriod ;
//+------------------------------------------------------------------+
string TimeFrameToString(int tf)
{
string tfs;
switch(tf) {
case PERIOD_M1: tfs="M1" ; break;
case PERIOD_M5: tfs="M5" ; break;
case PERIOD_M15: tfs="M15" ; break;
case PERIOD_M30: tfs="M30" ; break;
case PERIOD_H1: tfs="H1" ; break;
case PERIOD_H4: tfs="H4" ; break;
case PERIOD_D1: tfs="D1" ; break;
case PERIOD_W1: tfs="W1" ; break;
case PERIOD_MN1: tfs="MN1";
}
return(tfs);
}
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
IndicatorBuffers(4);
SetIndexStyle(0,DRAW_HISTOGRAM,0,4); //Red
SetIndexBuffer(0,ExtHBuffer1);
SetIndexStyle(1,DRAW_HISTOGRAM,0,4); //Lime
SetIndexBuffer(1,ExtHBuffer2);
SetIndexBuffer(2,ExtMapBuffer1);
SetIndexBuffer(3,ExtMapBuffer2);
if(myPeriod==0){xPeriod=Period();} {xPeriod=myPeriod;}
string tPeriod = TimeFrameToString(xPeriod) ;
IndicatorShortName(tPeriod + " Trade What You see ("+SSP+")");
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
if (CountBars>=Bars) CountBars=Bars;
SetIndexDrawBegin(0,Bars-CountBars+SSP);
SetIndexDrawBegin(1,Bars-CountBars+SSP);
int i, counted_bars=IndicatorCounted();
double SsMax, SsMin, smin, smax;
if(Bars<=SSP+1) return(0);
if(counted_bars<SSP+1)
{
for(i=1;i<=SSP;i++) ExtMapBuffer1[CountBars-i]=0.0;
for(i=1;i<=SSP;i++) ExtMapBuffer2[CountBars-i]=0.0;
}
for(i=CountBars-SSP;i>=0;i--) {
SsMax = High;
SsMin = Low[Lowest(NULL,xPeriod,MODE_LOW,SSP,i-SSP+1)];
smax = SsMax-(SsMax-SsMin)*Kmax/100;
ExtMapBuffer1=smax;
ExtMapBuffer2=smax;
}
for(int b=CountBars-SSP;b>=0;b--)
{
if(ExtMapBuffer1>ExtMapBuffer2)
{
ExtHBuffer1=1;
ExtHBuffer2=0;
}
else
{
ExtHBuffer1=0;
ExtHBuffer2=1;
}
}
return(0);
}BobMorane1000
このようなことができるかもしれません。
bool redValue = (iCustom(NULL,0,"indicatorNameHere",SSP,Kmax,1,0)!=0);
でも、気をつけてください。このインジケータはスーパーシグナルインジケータのバリエーションで、スーパーシグナルインジケータは再計算(リペイント)するんだ。
ありがとうございました、そして、警告をありがとうございました^^、これから試してみます.