コーディングのヘルプ - ページ 197 1...190191192193194195196197198199200201202203204...786 新しいコメント Georgebaker 2013.11.14 11:01 #1961 mladen: if (add>0) { drawLine(totalLevels,current+diff+add,addLinesColor,addLinesStyle); drawLine(totalLevels,current+diff-add ,addLinesColor,addLinesStyle); } を追加すると、すべての「基本」線の周囲に追加の線が描かれるようになります。 mladenさん、ありがとうございました。 Slow Moe 2013.11.15 15:40 #1962 Alertのプログラミングで助けが必要 こんにちは、私はmql4プログラミングの 初心者です。 私は、新しい「オールインワン」アラームを作りたいと思っています。 私は、Fx MNT、Super Signal、CHT Value Chartをアラーム信号と一緒に持っています。 今、私はMNT、スーパーシグナル、バリューチャートとRSIが適切な場所にあるときに、1つのアラームを持ちたいと思っています。 どのようにコード化すればよいのでしょうか?既存のアラームパーツを使い、それらを1つの大きなコードにまとめることはできますか? よろしくお願いします。 Mladen Rakic 2013.11.15 16:49 #1963 Slow Moe: こんにちは、私は全体のML4プログラミングに新しいです。 新しい "オールインワン "アラームを作りたいのですが。私は、Fx MNT、Super Signal、CHT Value Chartをアラームシグナルと一緒に持っています。今、私はMNT、スーパーシグナル、バリューチャートとRSIが適切な場所にあるとき、1つのアラームを持ちたい。どのようにコード化すればよいのでしょうか?既存のアラームパーツを使い、それらを1つの大きなコードにまとめることはできますか? 親切によろしくお願いします。 遅い それは可能ですが、これらすべての指標からデータを取得するための「責任」を負うことになるコードは単純ではありません(特に、アラートがトリガーされるべきかどうかを調べるために呼び出されるすべての指標に外部パラメータを宣言する必要があるパラメータを 持つ部分がそうです)。 metrus 2013.11.15 17:47 #1964 連続高値・安値引け 添付ファイルには、true/falseを選択することで組み込むことができる条件がいくつかあります。 もう一つの条件をtrue/falseで組み込みたいのですが、ロングで2連続高値引けがあるか? ロングで2回連続の高値引けがあるか? もしあれば、trueで有効な他の条件が揃っていれば、上向き矢印が出る。 ショートで2回連続の下降終値があるか? もしあれば、trueが有効な他の条件が存在する場合、下向きの矢印が表示されます。 終値の数を変数にできないか? どなたか、この追加条件をStoch_Indyインジケータにコード化していただけないでしょうか? ありがとうございました。 ファイル: stoch_indy.mq4 24 kb consecutive_closes.png 28 kb Mladen Rakic 2013.11.16 08:37 #1965 person77: 添付のファイルにはいくつかの条件があり、true/falseを選択することで含めることができます。 もう1つの条件をtrue/falseとして組み入れたい。 ロングで2回連続の高値引けがあるか? もしあれば、trueで有効な他の条件が揃っていれば、上向き矢印が出る。 ショートで2回連続の下降終値があるか? もしあれば、trueが有効な他の条件が存在する場合、下向きの矢印が表示されます。 終値の数を変数にできないか? どなたか、この追加条件をStoch_Indyインジケータにコード化していただけないでしょうか? ありがとうございます。 人77 これを試してみてください そのためにオプションUseConsecutiveCloseBarsを追加しました。単に終値だけでなく、そのバーで終値が始値より大きければ連続上昇、小さければ連続下降となるようにテストします。 ファイル: stoch_indy-1.01.mq4 24 kb metrus 2013.11.16 19:05 #1966 mladen: 人77これを試してみてください そのためのオプションUseConsecutiveCloseBarsを追加しました。単に終値をテストするだけでなく、そのバーで終値が始値より大きくないと連続上昇にならないし、そのバーで始値より小さくないと連続下降にならない。 非常に素晴らしいmladen - 非常によく機能します。 ありがとうございます。 私が遭遇したいくつかの例では、C = Oを許可することは、大部分において有利です。 これを許可するように変更するか、いっそのこと、C = Oを許可するかどうかのオプションを設けていただけないでしょうか。 ファイル: stoch_indy_1.png 63 kb stoch_indy_2.png 49 kb Mladen Rakic 2013.11.16 19:32 #1967 person77:非常に素晴らしいmladen - 非常によく機能します。ありがとうございます。私が遭遇した数少ない例では、C = Oを許容することは、概して好ましいことです。 これを許可するように変更するか、いっそのことC = Oを許可するかどうかのオプションを設けてもらえないでしょうか。 人物77 もう一つオプションが追加されました。AllowCloseEqualOpen.を追加しましたので、このオプションで制御 できるようになりました。 ファイル: stoch_indy-1.02.mq4 25 kb Cainah 2013.11.17 05:54 #1968 こんにちは、皆さん。 コーディングについて質問です。 この設定で一般的なチャートに移動平均を 描画することは可能でしょうか? nCountedBars = IndicatorCounted(); dFactor = 2*3.14159/180.0; mFactor = 10000.0; Mladen Rakic 2013.11.17 07:10 #1969 cain82: こんにちは、皆さん。コーディングについて質問です。 この設定で一般的なチャートに移動平均を描画することは可能でしょうか? nCountedBars = IndicatorCounted(); dFactor = 2*3.14159/180.0; mFactor = 10000.0; あなたの書いたもの(dFactorとmFactor)は、価格やバー番号に関係なく、すべて一定の値として評価されるので、チャート上に水平線が 描かれることになります。 Cainah 2013.11.17 07:26 #1970 mladen: あなたが書いたもの(dFactorとmFactor)は、価格やバー番号に関係なく一定の値に評価されるので、チャート上に水平線が表示されることになります。 ご回答ありがとうございます。 しかし、このIndi hystogrammコードのように、一般的なチャート上にMAの角度線を表示するにはどうしたらよいのでしょうか? //---- indicator settings #property indicator_separate_window #property indicator_buffers 3 #property indicator_color1 LimeGreen #property indicator_color2 FireBrick #property indicator_color3 Yellow #property indicator_width1 2 #property indicator_width2 2 #property indicator_width3 2 //---- indicator parameters extern int TimeFrame = 60; extern int MAMode = 0; extern int MAPeriod = 50; extern int Price = 4; extern double AngleTreshold = 0.25; extern int StartMAShift = 2; extern int EndMAShift = 0; extern int MaxBars = 500; string TF1; //---- indicator buffers double UpBuffer[]; double DownBuffer[]; double ZeroBuffer[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- 2 additional buffers are used for counting. IndicatorBuffers(3); //---- drawing settings SetIndexStyle(0,DRAW_HISTOGRAM); SetIndexStyle(1,DRAW_HISTOGRAM); SetIndexStyle(2,DRAW_HISTOGRAM); IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)+2 ); //---- 3 indicator buffers mapping if(!SetIndexBuffer(0,UpBuffer) && !SetIndexBuffer(1,DownBuffer) && !SetIndexBuffer(2,ZeroBuffer)) Print("cannot set indicator buffers!"); SetIndexLabel(0,""); SetIndexLabel(1,""); SetIndexLabel(2,""); switch(TimeFrame) { case 1: TF1="M1"; break; case 5: TF1="M5"; break; case 15: TF1="M15"; break; case 30: TF1="M30"; break; case 60: TF1="H1"; break; case 240: TF1="H4"; break; case 1440: TF1="D1"; break; case 10080: TF1="W1"; break; case 43200: TF1="MN1"; break; default: {TimeFrame = Period(); init(); return(0);} } IndicatorShortName("MAAngle MTF * "+TF1+" *"); //---- initialization done return(0); } //+------------------------------------------------------------------+ //| The angle for EMA | //+------------------------------------------------------------------+ int start() { double fEndMA, fStartMA; double fAngle, mFactor, dFactor; int nLimit, i; int nCountedBars; double angle; int ShiftDif; string Sym; if (MAMode >= 4) MAMode = 0; if(EndMAShift >= StartMAShift) { Print("Error: EndMAShift >= StartMAShift"); StartMAShift = 6; EndMAShift = 0; } nCountedBars = IndicatorCounted(); dFactor = 2*3.14159/180.0; mFactor = 10000.0; Sym = StringSubstr(Symbol(),3,3); if (Sym == "JPY") mFactor = 100.0; ShiftDif = StartMAShift-EndMAShift; mFactor /= ShiftDif; //---- check for possible errors if(nCountedBars<0) return(-1); //---- last counted bar will be recounted if(nCountedBars>0) nCountedBars--; nLimit=Bars-nCountedBars; nLimit=MathMax(nLimit,TimeFrame/Period()); nLimit=MathMin(nLimit,MaxBars ); //---- main loop for(i=0; i<nLimit; i++) { int y = iBarShift(NULL,TimeFrame,Time); if (TimeFrame<Period()) TimeFrame=Period(); fEndMA=iMA(NULL,TimeFrame,MAPeriod,0,MAMode,Price,y+EndMAShift); fStartMA=iMA(NULL,TimeFrame,MAPeriod,0,MAMode,Price,y+StartMAShift); // 10000.0 : Multiply by 10000 so that the fAngle is not too small // for the indicator Window. fAngle = mFactor * (fEndMA - fStartMA)/2.0; //fAngle = MathArctan(fAngle)/dFactor; DownBuffer = 0.0; UpBuffer = 0.0; ZeroBuffer = 0.0; if(fAngle > AngleTreshold) UpBuffer = fAngle; else if (fAngle < -AngleTreshold) DownBuffer = fAngle; else ZeroBuffer = fAngle; } return(0); } //+------------------------------------------------------------------+ Coding help MAAngle Indicator Sound Alert 1...190191192193194195196197198199200201202203204...786 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
mladenさん、ありがとうございました。
Alertのプログラミングで助けが必要
こんにちは、私はmql4プログラミングの 初心者です。
私は、新しい「オールインワン」アラームを作りたいと思っています。
私は、Fx MNT、Super Signal、CHT Value Chartをアラーム信号と一緒に持っています。
今、私はMNT、スーパーシグナル、バリューチャートとRSIが適切な場所にあるときに、1つのアラームを持ちたいと思っています。
どのようにコード化すればよいのでしょうか?既存のアラームパーツを使い、それらを1つの大きなコードにまとめることはできますか?
よろしくお願いします。
こんにちは、私は全体のML4プログラミングに新しいです。
新しい "オールインワン "アラームを作りたいのですが。
私は、Fx MNT、Super Signal、CHT Value Chartをアラームシグナルと一緒に持っています。
今、私はMNT、スーパーシグナル、バリューチャートとRSIが適切な場所にあるとき、1つのアラームを持ちたい。
どのようにコード化すればよいのでしょうか?既存のアラームパーツを使い、それらを1つの大きなコードにまとめることはできますか?
親切によろしくお願いします。遅い
それは可能ですが、これらすべての指標からデータを取得するための「責任」を負うことになるコードは単純ではありません(特に、アラートがトリガーされるべきかどうかを調べるために呼び出されるすべての指標に外部パラメータを宣言する必要があるパラメータを 持つ部分がそうです)。
連続高値・安値引け
添付ファイルには、true/falseを選択することで組み込むことができる条件がいくつかあります。
もう一つの条件をtrue/falseで組み込みたいのですが、ロングで2連続高値引けがあるか?
ロングで2回連続の高値引けがあるか?
もしあれば、trueで有効な他の条件が揃っていれば、上向き矢印が出る。
ショートで2回連続の下降終値があるか?
もしあれば、trueが有効な他の条件が存在する場合、下向きの矢印が表示されます。
終値の数を変数にできないか?
どなたか、この追加条件をStoch_Indyインジケータにコード化していただけないでしょうか? ありがとうございました。
添付のファイルにはいくつかの条件があり、true/falseを選択することで含めることができます。
もう1つの条件をtrue/falseとして組み入れたい。
ロングで2回連続の高値引けがあるか?
もしあれば、trueで有効な他の条件が揃っていれば、上向き矢印が出る。
ショートで2回連続の下降終値があるか?
もしあれば、trueが有効な他の条件が存在する場合、下向きの矢印が表示されます。
終値の数を変数にできないか?
どなたか、この追加条件をStoch_Indyインジケータにコード化していただけないでしょうか? ありがとうございます。
人77
これを試してみてください
そのためにオプションUseConsecutiveCloseBarsを追加しました。単に終値だけでなく、そのバーで終値が始値より大きければ連続上昇、小さければ連続下降となるようにテストします。
人77
これを試してみてください
そのためのオプションUseConsecutiveCloseBarsを追加しました。単に終値をテストするだけでなく、そのバーで終値が始値より大きくないと連続上昇にならないし、そのバーで始値より小さくないと連続下降にならない。非常に素晴らしいmladen - 非常によく機能します。 ありがとうございます。
私が遭遇したいくつかの例では、C = Oを許可することは、大部分において有利です。
これを許可するように変更するか、いっそのこと、C = Oを許可するかどうかのオプションを設けていただけないでしょうか。
非常に素晴らしいmladen - 非常によく機能します。ありがとうございます。
私が遭遇した数少ない例では、C = Oを許容することは、概して好ましいことです。
これを許可するように変更するか、いっそのことC = Oを許可するかどうかのオプションを設けてもらえないでしょうか。人物77
もう一つオプションが追加されました。AllowCloseEqualOpen.を追加しましたので、このオプションで制御 できるようになりました。
こんにちは、皆さん。
コーディングについて質問です。
この設定で一般的なチャートに移動平均を 描画することは可能でしょうか?
nCountedBars = IndicatorCounted();
dFactor = 2*3.14159/180.0;
mFactor = 10000.0;
こんにちは、皆さん。
コーディングについて質問です。
この設定で一般的なチャートに移動平均を描画することは可能でしょうか?
nCountedBars = IndicatorCounted();
dFactor = 2*3.14159/180.0;
mFactor = 10000.0;あなたの書いたもの(dFactorとmFactor)は、価格やバー番号に関係なく、すべて一定の値として評価されるので、チャート上に水平線が 描かれることになります。
あなたが書いたもの(dFactorとmFactor)は、価格やバー番号に関係なく一定の値に評価されるので、チャート上に水平線が表示されることになります。
ご回答ありがとうございます。
しかし、このIndi hystogrammコードのように、一般的なチャート上にMAの角度線を表示するにはどうしたらよいのでしょうか?
#property indicator_separate_window
#property indicator_buffers 3
#property indicator_color1 LimeGreen
#property indicator_color2 FireBrick
#property indicator_color3 Yellow
#property indicator_width1 2
#property indicator_width2 2
#property indicator_width3 2
//---- indicator parameters
extern int TimeFrame = 60;
extern int MAMode = 0;
extern int MAPeriod = 50;
extern int Price = 4;
extern double AngleTreshold = 0.25;
extern int StartMAShift = 2;
extern int EndMAShift = 0;
extern int MaxBars = 500;
string TF1;
//---- indicator buffers
double UpBuffer[];
double DownBuffer[];
double ZeroBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- 2 additional buffers are used for counting.
IndicatorBuffers(3);
//---- drawing settings
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexStyle(1,DRAW_HISTOGRAM);
SetIndexStyle(2,DRAW_HISTOGRAM);
IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)+2 );
//---- 3 indicator buffers mapping
if(!SetIndexBuffer(0,UpBuffer) &&
!SetIndexBuffer(1,DownBuffer) &&
!SetIndexBuffer(2,ZeroBuffer))
Print("cannot set indicator buffers!");
SetIndexLabel(0,"");
SetIndexLabel(1,"");
SetIndexLabel(2,"");
switch(TimeFrame)
{
case 1: TF1="M1"; break;
case 5: TF1="M5"; break;
case 15: TF1="M15"; break;
case 30: TF1="M30"; break;
case 60: TF1="H1"; break;
case 240: TF1="H4"; break;
case 1440: TF1="D1"; break;
case 10080: TF1="W1"; break;
case 43200: TF1="MN1"; break;
default: {TimeFrame = Period(); init(); return(0);}
}
IndicatorShortName("MAAngle MTF * "+TF1+" *");
//---- initialization done
return(0);
}
//+------------------------------------------------------------------+
//| The angle for EMA |
//+------------------------------------------------------------------+
int start()
{
double fEndMA, fStartMA;
double fAngle, mFactor, dFactor;
int nLimit, i;
int nCountedBars;
double angle;
int ShiftDif;
string Sym;
if (MAMode >= 4) MAMode = 0;
if(EndMAShift >= StartMAShift)
{
Print("Error: EndMAShift >= StartMAShift");
StartMAShift = 6;
EndMAShift = 0;
}
nCountedBars = IndicatorCounted();
dFactor = 2*3.14159/180.0;
mFactor = 10000.0;
Sym = StringSubstr(Symbol(),3,3);
if (Sym == "JPY") mFactor = 100.0;
ShiftDif = StartMAShift-EndMAShift;
mFactor /= ShiftDif;
//---- check for possible errors
if(nCountedBars<0) return(-1);
//---- last counted bar will be recounted
if(nCountedBars>0) nCountedBars--;
nLimit=Bars-nCountedBars;
nLimit=MathMax(nLimit,TimeFrame/Period());
nLimit=MathMin(nLimit,MaxBars );
//---- main loop
for(i=0; i<nLimit; i++)
{
int y = iBarShift(NULL,TimeFrame,Time);
if (TimeFrame<Period()) TimeFrame=Period();
fEndMA=iMA(NULL,TimeFrame,MAPeriod,0,MAMode,Price,y+EndMAShift);
fStartMA=iMA(NULL,TimeFrame,MAPeriod,0,MAMode,Price,y+StartMAShift);
// 10000.0 : Multiply by 10000 so that the fAngle is not too small
// for the indicator Window.
fAngle = mFactor * (fEndMA - fStartMA)/2.0;
//fAngle = MathArctan(fAngle)/dFactor;
DownBuffer = 0.0;
UpBuffer = 0.0;
ZeroBuffer = 0.0;
if(fAngle > AngleTreshold)
UpBuffer = fAngle;
else if (fAngle < -AngleTreshold)
DownBuffer = fAngle;
else ZeroBuffer = fAngle;
}
return(0);
}
//+------------------------------------------------------------------+