ここから本文です

(回答リクエストですが、たまたま見かけた優しい方がいらっしゃいましたら、ぜひ...

dek********さん

2019/5/1404:00:03

(回答リクエストですが、たまたま見かけた優しい方がいらっしゃいましたら、ぜひお願いします)

すいません、ずうずうしいお願いとは思うのですがよかったら見ていただけませんか?

パーフェクトオーダーが発生かつボリンジャーバンドにローソク足が触れたときにそこに矢印が描画され、アラートが発生し通貨ペアが表示される(ただし、一本のローソク足につきアラートは1度まで)

と、したいのですがうまくいきません。
浅学なので、めちゃくちゃなコードになっているのはわかるのですが、何をどう直したり勉強して良いかわかりません...
よかったらアドバイスいただけませんか?(TT)
これでも数時間悩んでいます。。

#property indicator_chart_window
#property indicator_buffers 5
#property indicator_color1 Blue
#property indicator_color2 Blue
#property indicator_color3 Blue
#property indicator_color4 Blue
#property indicator_color5 Red
#property indicator_style1 STYLE_SOLID
#property indicator_style2 STYLE_SOLID
#property indicator_style3 STYLE_SOLID
#property indicator_style4 STYLE_SOLID
#property indicator_style5 STYLE_SOLID
#property indicator_width1 1
#property indicator_width2 1
#property indicator_width3 1
#property indicator_width4 2
#property indicator_width5 2

double BufUP[];
double BufCenter[];
double BufDOWN[];
double BufUP_Arrow[];
double BufDOWN_Arrow[];
double Lsma=iMA(NULL,0,200,0,MODE_SMMA,PRICE_CLOSE,0);
double Msma=iMA(NULL,0,75,0,MODE_SMMA,PRICE_CLOSE,0);
double Ssma=iMA(NULL,0,20,0,MODE_SMMA,PRICE_CLOSE,0);
double LastTime;
extern int BB_Period = 20;

// 初期化関数
int init()
{
SetIndexBuffer(0, BufUP);
SetIndexBuffer(1, BufCenter);
SetIndexBuffer(2, BufDOWN);
SetIndexBuffer(3, BufUP_Arrow);
SetIndexBuffer(4, BufDOWN_Arrow);

SetIndexStyle(3,DRAW_ARROW,STYLE_SOLID,2,Blue);
SetIndexArrow(3,233);

SetIndexStyle(4,DRAW_ARROW,STYLE_SOLID,2,Red);
SetIndexArrow(4,234);

return(0);
}

// 指標計算関数
int start()
{
int counted_bar = IndicatorCounted();
int limit = Bars-counted_bar;

if(counted_bar == 0) limit -= BB_Period-1;
for (int i = limit-1; i>=0; i--)
{
BufUP[i] = iBands(NULL,0,BB_Period,3,0,PRICE_CLOSE,1,i);
BufCenter[i] = iBands(NULL,0,BB_Period,3,0,PRICE_CLOSE,0,i);
BufDOWN[i] = iBands(NULL,0,BB_Period,3,0,PRICE_CLOSE,2,i);


}

if(counted_bar == 0) limit -= 2;
for (i = limit-1; i>=0; i--)
{
if(Ssma>Msma && Msma>Lsma){

if(BufUP[i]<High[i]){
BufDOWN_Arrow[i] = EMPTY_VALUE;
BufDOWN_Arrow[i] = High[i]+30*Point;
if(LastTime!=TimeHour(Time[0])*100+TimeMinute(Time[0])){
Alert("Check!",Symbol());
LastTime=TimeHour(Time[0])*100+TimeMinute(Time[0]);}
}
}
if(Lsma>Msma && Msma>Ssma){
if(BufDOWN[i]>Low[i]){
BufUP_Arrow[i] = EMPTY_VALUE;
BufUP_Arrow[i] = Low[i]-30*Point;
if(LastTime!=TimeHour(Time[0])*100+TimeMinute(Time[0])){
Alert("Check",Symbol());
LastTime=TimeHour(Time[0])*100+TimeMinute(Time[0]);}
}

}
}

return(0);
}

この質問は、div********さんに回答をリクエストしました。

閲覧数:
110
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

oka********さん

2019/5/1408:23:31

祭日には日本国国旗を立てて、祭日が終わったら旗をしまうだけだ

それが出来ん奴は非国民だ!!!

この回答は投票によってベストアンサーに選ばれました!

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる