スーパーシグナルズインジケーター - ページ 37

 
sennal999:
が、build 765 では読み込まれない。

おそらく保護されているのでしょう

 

.Isso não está carregando na compilação 765 [/ QUOTE].

一つは、イメージとして、EMAの中にこの指標(サポートとレジスタンス)を置くことができる?

それは支持または抵抗の線を横切るときに購入または売却を開く。

ボリンジャーバンドの ラインをクロスしたときに移動平均で売りを開く。

ファイル:
 

支持と抵抗

ファイル:
 

これらは指標となるものです。

https://www.mql5.com/en/forum/general

 

バンド

//+------------------------------------------------------------------+

//| Bands.mq4

|| 著作権 2005-2014, MetaQuotes Software Corp.|

//|MQL4: MetaTraderによるFX自動売買、ストラテジーテスター、カスタムインディケータ

//+------------------------------------------------------------------+

#property copyright "2005-2014, MetaQuotes Software Corp."

#property link "http://www.mql4.com"

#property description "ボリンジャーバンド"

#property strict

#インクルード

#property indicator_chart_window

#property indicator_buffers 3

#property indicator_color1 LightSeaGreen

#property indicator_color2 ライトシーグリーン

#property indicator_color3 ライトシーグリーン

//--- インジケーターのパラメーター

input int InpBandsPeriod=20; // バンドの周期

input int InpBandsShift=0; // バンドの移動量

input double InpBandsDeviations=2.0; // バンドデビエーション

//--- バッファ

double ExtMovingBuffer[];

double ExtUpperBuffer[];

double ExtLowerBuffer[];

double ExtStdDevBuffer[];

//+------------------------------------------------------------------+

//| カスタムインジケータ初期化関数

//+------------------------------------------------------------------+

int OnInit(void)

{

//--- カウントに使用するバッファを1つ追加。

IndicatorBuffers(4);

IndicatorDigits(Digits)。

//--- 中央の線

SetIndexStyle(0,DRAW_LINE)を設定します。

SetIndexBuffer(0,ExtMovingBuffer)を設定します。

SetIndexShift(0,InpBandsShift)を設定します。

SetIndexLabel(0, "Bands SMA"); SetIndexLabel(0, "Bands SMA");

//--- 上側のバンド

SetIndexStyle(1,DRAW_LINE)を設定します。

SetIndexBuffer(1,ExtUpperBuffer)を設定します。

SetIndexShift(1,InpBandsShift)を設定します。

SetIndexLabel(1, "Bands Upper");

//--- 下側のバンド

SetIndexStyle(2,DRAW_LINE)を設定します。

SetIndexBuffer(2,ExtLowerBuffer)を設定します。

SetIndexShift(2,InpBandsShift)を設定します。

SetIndexLabel(2, "Bands Lower");

//--- 作業用バッファ

SetIndexBuffer(3,ExtStdDevBuffer)を設定します。

//--- 入力パラメータをチェック

if(InpBandsPeriod<=0)

{

Print("間違った入力パラメータ Bands Period=",InpBandsPeriod).Print("間違った入力パラメータ Bands Period=",InpBandsPeriod")。

return(INIT_FAILED);

SetIndexDrawBegin(0,InpBandsPeriod+InpBandsShift)を設定します。

SetIndexDrawBegin(1,InpBandsPeriod+InpBandsShift)。

SetIndexDrawBegin(2,InpBandsPeriod+InpBandsShift)とする。

//--- 初期化完了

return(INIT_SUCCEEDED);

}

//+------------------------------------------------------------------+

//| ボリンジャーバンド

//+------------------------------------------------------------------+

int OnCalculate(const int rates_total,

const int prev_calculated,

const datetime &time[],

const double &open[],

const double &high[],

const double &low[],

const double &close[],

const long &tick_volume[],

const long &volume[],

const int &spread[])

{

int i,pos;

//---

if(rates_total<=InpBandsPeriod || InpBandsPeriod<=0)

return(0);

//--- 0からrates_totalまでカウントする。

ArraySetAsSeries(ExtMovingBuffer,false);

ArraySetAsSeries(ExtUpperBuffer,false);ArraySetAsSeries(ExtUpperBuffer,false)

ArraySetAsSeries(ExtLowerBuffer,false); ArraySetAsSeries(ExtLowerBuffer,false);

ArraySetAsSeries(ExtStdDevBuffer,false); ArraySetAsSeries(ExtStdDevBuffer,false);

ArraySetAsSeries(close,false)。

//--- 初期値ゼロ

if(prev_calculated<1)

{

for(i=0; i<InpBandsPeriod; i++)

{

ExtMovingBuffer=EMPTY_VALUE;

ExtUpperBuffer=EMPTY_VALUE。

ExtLowerBuffer=EMPTY_VALUE;

}

}

//--- 計算開始

if(prev_calculated>1)

pos=prev_calculated-1;

さもなくば

pos=0;

//--- メインサイクル

for(i=pos; i<rate_total && !IsStopped(); i++)

{

//--- 中央のライン

ExtMovingBuffer=SimpleMA(i,InpBandsPeriod,close)。

//--- StdDevを計算し、書き出す

ExtStdDevBuffer=StdDev_Func(i,close,ExtMovingBuffer,InpBandsPeriod);

//--- 上段ライン

ExtUpperBuffer=ExtMovingBuffer+InpBandsDeviations*ExtStdDevBuffer;

//--- 下側ライン

ExtLowerBuffer=ExtMovingBuffer-InpBandsDeviations*ExtStdDevBuffer。

//---

}

//---- OnCalculate が終了しました。新しい prev_calculated を返す。

return(rates_total);

}

//+------------------------------------------------------------------+

//| 標準偏差を計算する

//+------------------------------------------------------------------+

double StdDev_Func(int position,const double &price[],const double &MAprice[],int period) { StdDev_Func(int position,const double &price[],const double &MAprice[],int period)

{

//--- 変数

double StdDev_dTmp=0.0;

//--- 位置のチェック

if(position>=period)

{

//--- StdDevを計算する

for(int i=0; i<period; i++)

StdDev_dTmp+=MathPow(価格[position-i]-MAprice[position],2)。

StdDev_dTmp=MathSqrt(StdDev_dTmp/period)となります。

}

//--- 計算値を返す

return(StdDev_dTmp);

}

//+------------------------------------------------------------------+

 

MovingAverages.mqhは信頼性に欠ける。

 

トゥルーポイントシグナルtrue_point_signal.mq4

ファイル:
 

スーパーシグナルインジケーターの名称を変更(リペイントは同じ)symphonie_market_emotion_indikator.mq4

 
increase:
以前から使っていて、気に入っているものです。

MrTools/Mladenさん、クロス指標/信号線に 矢印のついたアラートを追加していただけませんか?

ありがとうございます。

 

こんにちは。

v3のアラートとチャネル・インジケータを統合したインジケータの別バージョンがこちらです。アラートは、同様に通知を送信 することができます。

多分あなたはそれが有用であることがわかります

ベスト、V。

ファイル: