[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 450

 
remobal писал(а)>>

何がそんなにおかしいのか、説明してください。

大衆文学を読めば、その疑問は解消されるのです。あなたの質問は、すべてを銀の皿に載せてほしいということですね。

 
Vinin >>:

Достаточно почитать популярную литературу и вопрос сам собой закроется. Ваш вопрос означает что Вам нужно все подать на блюдечке с голубой каемочкой.

失礼、お願いします。私は大衆文学を読みますが、残念ながらそこにもこの質問の答えはありません。

せめて本の題名と著者名だけでも教えていただけませんか。

ありがとうございました。

 
こんにちは、私はスクープでAwesome Oscillatorが 必要な場合、そのパラメータは一定であり、MAとして処方する必要はありません教えてもらえますか?
 
また、EAの中でAOや Awesome Oscillatorと どのように表記するのでしょ うか
 
Farina >>:
Нужно ли его объявлять и в каком месте прописывать? и как на него ссылаться в советнике? как AO или Awesome Oscillator ?
doubleiAO() 文字列シンボル,int timeframe,int shift)
Awesome oscillatorの計算。
パラメータ
記号 - シンボル名:指標となるデータのシンボル名。NULLはカレントシンボルを意味する。
タイムフレーム - 期間チャートの期間の いずれかを指定することができます。0は現在のチャートの期間を意味します。
シフト - 指標バッファから取得した値のインデックス(現在のバーから指定した期間だけ後ろにずらす)。
 double val=iAO(NULL, 0, 2);
 
おかげさまで)
 

こんにちは、友人たち。

コードが混乱しています。修正すべき点をアドバイスしてください。


このフォーラムでLeManTrendというインジケータを見つけました。

私はそれを少し修正したい - インジケータの2つの行に平滑化移動平均を 追加します。

そのために配列ma[]とma2[]を用意します。


しかし、このインジケータをチャートに追加しても、「何も描画されない」...。

何が問題なのか


//----

string Indicator_Name = "ind1";

int Objs = 0;

//----

#property indicator_separate_window

#property indicator_buffers 4

//----

int Bars.Count = 0;


extern int Min = 13;

extern int Midle = 21;

extern int Max = 34;

extern int PeriodEMA = 3;

//---- Буферы

double ExtMapBuffer1[];

double ExtMapBuffer2[];

double TempBuffer1[];

double TempBuffer2[];

double ma[];

double ma2[];

int method_ma = 0;


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

//| Custom indicator initialization function |

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

int init()

{

//---- indicators

IndicatorShortName(Indicator_Name);

int cur = 0;

int st = 23;

//-------------------------------------------

int width = 2;


SetIndexStyle(0, DRAW_LINE, DRAW_LINE, width, Yellow);

SetIndexBuffer(0, ExtMapBuffer1);

SetIndexStyle(1, DRAW_LINE, DRAW_LINE, 2, Blue);

SetIndexBuffer(1, ExtMapBuffer2);

SetIndexBuffer(2, ma);

SetIndexStyle(2, DRAW_LINE, DRAW_LINE, 1, Red);

SetIndexBuffer(3, ma2);

SetIndexStyle(3, DRAW_LINE, DRAW_LINE, 1, Teal);

//----

return(0);

}

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

//| Custom indicator deinitialization function |

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

int deinit()

{

//----


//----

return(0);

}

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

//| Custom indicator iteration function |

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

int start()

{


int limit;

if (IndicatorCounted()<0) return(-1);

limit=Bars-IndicatorCounted();

if (Bars.Count>0 && limit>Bars.Count)

limit=Bars.Count;

int i = limit;

//----

while(i >= 0)

{

double High1 = iHigh(NULL, 0, iHighest(NULL, 0, MODE_HIGH, Min,i+1));

double High2 = iHigh(NULL, 0, iHighest(NULL, 0, MODE_HIGH, Midle,i+1));

double High3 = iHigh(NULL, 0, iHighest(NULL, 0, MODE_HIGH, Max,i+1));

TempBuffer1[i] = ((High[i]-High1)+(High[i]-High2)+(High[i]-High3));

double Low1 = iLow(NULL, 0, iLowest(NULL, 0, MODE_LOW, Min, i+1));

double Low2 = iLow(NULL, 0, iLowest(NULL, 0, MODE_LOW, Midle, i+1));

double Low3 = iLow(NULL, 0, iLowest(NULL, 0, MODE_LOW, Max, i+1));

TempBuffer2[i] = ((Low1-Low[i])+(Low2-Low[i])+(Low3-Low[i]));

i--;

}

//---- основной цикл

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

{

if (PeriodEMA > 0 )

{

ExtMapBuffer1[i] = -iMAOnArray(TempBuffer1,Bars,PeriodEMA,0,MODE_EMA,i);

ExtMapBuffer2[i] = -iMAOnArray(TempBuffer2,Bars,PeriodEMA,0,MODE_EMA,i);

}

else

{

ExtMapBuffer1[i] = TempBuffer1[i];

ExtMapBuffer2[i] = TempBuffer2[i];

}

}


//====================================================================


//--------------------------------------------------------------------


//элементы скользящих средних

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

{

ma[i]=iMAOnArray(ExtMapBuffer1,0,8,0,method_ma,i);

ma2[i]=iMAOnArray(ExtMapBuffer2,0,8,0,method_ma,i);

}


//====================================================================

//----

return(0);

}




オリジナルのLeManTrendインジケータを添付します。


ファイル:
 

なぜクローズエラーが出るのか、2つの異なる端子で...

: OrderClose エラー 4107

OrderClose関数の 価格 1.48566000 が無効です。

3つのバリエーションはすべて同じエラーを出しますが、どれがより正しいのでしょうか?

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);
OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),3, Violet);
OrderClose(OrderTicket(),OrderLots(),MarketInfo(Symbol(),MODE_BID),3,Violet);

 
T-G писал(а)>>

なぜクローズエラーが出るのか、2つの異なる端子で...

: OrderClose エラー 4107

OrderClose 関数の価格 1.48566000 が無効です。

ところで、3つの選択肢のうち、どれが正しいのでしょうか?

あらかじめ順番を決めておく必要があるのでしょうね。

 
T-G >>:

Ребята, ну почему дает ошибку закрытия, при чем на двух разных терминалах..

: OrderClose error 4107

: invalid price 1.48566000 for OrderClose function

причем дают одинаковую ошибку все три варианта: и кстати какой из них наиболее правильный?

注文は事前に選択されていますか? これらの関数「OrderTicket(), OrderLots(), OrderClosePrice()」はすべてOrderSelect()で注文が選択されたときのみ機能するため、注文は事前に選択されている必要があります。

理由: