//------- Внешние параметры индикатора ------------------------------- extern int CCI_Period_0 = 14; // Период CCI для текущего ТФ extern int Level_0 = 100; // Уровень CCI для текущего ТФ extern int TF_1 = 60; // Количество минут первого ТФ extern int CCI_Period_1 = 14; // Период CCI для первого ТФ extern int Level_1 = 100; // Уровень CCI для первого ТФ extern int TF_2 = 240; // Количество минут второго ТФ extern int CCI_Period_2 = 14; // Период CCI для второго ТФ extern int Level_2 = 100; // Уровень CCI для второго ТФ extern int NumberOfBars = 10000; // Количество баров обсчёта (0-все) extern bool EmailON = TRUE; extern bool SoundON = TRUE;
空から降ってくるのを待っているのだろうか。:))利益で1回閉じたら損失待ち!!!!!!!!!!!!!!!!!!!!!!!!!」と。もし彼が彼らの後に取引を始めた ら、どこから(?)そこで彼は、利益の出るものを先に決済し、利益の出ないものを待って取引を停止 した...。
完全に不可解な論理というか、あなたの解釈というか......。
その通りです :) 彼はその時、採算の合わない2つの店がオープンするのを待たねばなりません :)この理論は、統計学と確率論に基づいています。
空から降ってくるのを待っているのだろうか。:))利益で1回閉じたら損失待ち!!!!!!!!!!!!!!!!!!!!!!!!!」と。もし彼が彼らの後に取引を始めた ら、どこから(???)そこで彼は、利益の出るものを先に決済し、利益の出ないものを待って取引を停止 した...。
完全に不可解な論理、あるいはその解釈...。
そうですね、意味がないですね、、、、。トレードはどこから来るのか、誰がトレードしなければならないのか、・・・・・・なぜまず前に2回の負けトレードを真似して、その2回の負けトレードに頼らないトレードをするのか、・・・・・・・・。
バーチャルトレードの話らしいです。
チャートに投げるオブジェクト、見張っていてください。おそらく。
その通りです :) 彼は赤字の2店舗がオープンするのを待たないといけないんです :)この理論は、統計学と確率論に基づいています。
最後に決済したトレードが利益が出ているのに、どうして2回も負けトレードを待つことができるのだろう?
バーチャルトレードの話らしいです。
チャートに投げるオブジェクト、見張っていてください。おそらく。
Expert Advisorが勝手に2つの負けトレードをするのならわかるのですが、Expert Advisorが勝手にモデル化して、そのモデルに基づいてエントリーを探し始める、、、それならロジックがあるのですが、そうでない場合、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、。
こんばんは、インジケータにアラートを設定する方法を教えてください。すべて試しましたが、すべてのティックで シグナルが発生し、その後まったくシグナルが発生しません。
//| i-3CCI-h.mq4 |
//| johnfantom & KimIV |
//| http://www.kimiv.ru |
//| |
//| 02.01.2006 CCI с 3-х ТФ в одном флаконе. |
//+------------------------------------------------------------------+
#property copyright "johnfantom & KimIV"
#property link "http://www.kimiv.ru"
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
#property indicator_maximum 1.4
#property indicator_level1 0
#property indicator_minimum -1.2
//------- Внешние параметры индикатора -------------------------------
extern int CCI_Period_0 = 14; // Период CCI для текущего ТФ
extern int Level_0 = 100; // Уровень CCI для текущего ТФ
extern int TF_1 = 60; // Количество минут первого ТФ
extern int CCI_Period_1 = 14; // Период CCI для первого ТФ
extern int Level_1 = 100; // Уровень CCI для первого ТФ
extern int TF_2 = 240; // Количество минут второго ТФ
extern int CCI_Period_2 = 14; // Период CCI для второго ТФ
extern int Level_2 = 100; // Уровень CCI для второго ТФ
extern int NumberOfBars = 10000; // Количество баров обсчёта (0-все)
extern bool EmailON = TRUE;
extern bool SoundON = TRUE;
//------- Буферы индикатора ------------------------------------------
double buf0[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
void init() {
IndicatorDigits(1);
SetIndexBuffer(0, buf0);
SetIndexLabel (0, "i-3CCI-h");
SetIndexStyle (0, DRAW_HISTOGRAM, STYLE_SOLID, 2);
SetIndexEmptyValue(0, 0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
void deinit() {
Comment("");
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
void start() {
double cci0, cci1, cci2;
double alertTime;
int nb1, nb2;
int LoopBegin, sh;
if (NumberOfBars==0) LoopBegin=Bars-1;
else LoopBegin=NumberOfBars-1;
LoopBegin=MathMin(Bars-1, LoopBegin);
for (sh=LoopBegin; sh>=0; sh--) {
nb1=iBarShift(NULL, TF_1, Time[sh], False);
nb2=iBarShift(NULL, TF_2, Time[sh], False);
cci0=iCCI(NULL, 0, CCI_Period_0, PRICE_CLOSE, sh);
cci1=iCCI(NULL, TF_1, CCI_Period_1, PRICE_CLOSE, nb1);
cci2=iCCI(NULL, TF_2, CCI_Period_2, PRICE_CLOSE, nb2);
if (cci0>Level_0 && cci1>Level_1 && cci2>Level_2) { buf0[sh]=1;
if (buf0[sh]!=1 && alertTime != Time[0]) { alertTime = Time[0];
if (EmailON != TRUE) SendMail ("Signal", "UP");
if (SoundON != TRUE) Alert ("Signal UP");}
}
if (cci0<-Level_0 && cci1<-Level_1 && cci2<-Level_2) { buf0[sh]=-1;
if (buf0[sh]!=-1 && alertTime != Time[0]) { alertTime = Time[0];
if (EmailON != TRUE) SendMail ("Signal", "UP");
if (SoundON != TRUE) Alert ("Signal UP");}
}
}
}
//+------------------------------------------------------------------+
Expert Advisorが勝手に2つの負けトレードを行い、Expert Advisorがそれを独自にモデル化し、モデルに基づいてエントリーを探し始める、・・・というのであれば、ある程度のロジックはあるのですが、「・・・」については、どうでしょうか?
でも、こうしてモノをぶら下げて、値段を記憶し、差額を記録していくのです。
値段は便宜上、日付と時間の値段の方が使いやすいんです。
でも、こうしてモノをぶら下げて、値段を記憶し、差額を記録していくのです。
利便性というより、日付と時刻の値段の方が使いやすいんです。
まあ、私はこの方法を知っている、ところで、それはのような記事でここのフォーラムで説明され、ロジックはまだ不明である、......。理由があるのなら、利益が出ることを期待してトレードのモデリングをし、このモデリングで同じ状況を探すとよいでしょう。著者が言った通り」の統計と確率に基づくのであれば、確率かそれ以外かでトレードを開く方がよっぽど簡単です。
例を挙げて説明しよう。
前日が強気だった場合、その取引は買いとなり、弱気だった場合、その取引は売りになります。
we need :
1) EAが動作し始める。
2) 前2日が弱気だった場合、(表向きは)売りトレードのために開いたが、その後(表向きは)売りか買いを取りに行った。
もし、2つの仮想損失がなければ、EAはそれが現れるまで待ち、その後、ポジションを開く でしょう。
戦略は当然異なるはずだが、意味は次の通りである。
負けトレードのエミュレーションは明確です。Expert Advisorが取引シグナルをキャッチし、ロングポジションを取るなど。架空の注文開始位置とそのストップオーダーを記憶しています。そして、ダニを監視する。価格が仮想注文のストップに触れた場合、その取引は損失取引として記録されます。もし、テイクオーダーと接触すれば、その取引は利益と表示されます。あとは、どの取引システムで架空注文の設定点を追跡するかだけです。
cyclik33 さん、確かにやらないですね、これから仕事があるので。私は、物事を明確にするために質問し、このコメントをしました。私のクライアントには、タスクの正確な表現に悩む人がたくさんいますね。
利他的な人が見つかるといいですね。あなたのアイデアは、プログラムコードでかなり実現可能です。