どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 447

 
TarasBY:
また、(例のTimeDayOfWeek()については、どこで読んだのでしょうか?:)))

右側;)

私の勘違いで、Time[]形式でも設定できるのですが、この例では違うので、より便利です ))))

 
Vitek2010:
しかし、そのようなことはありません。私は説明します - あなたのフォーラムは、プログとサイズの挿入の最後の有能な砦の希望のようなものです - それは書き込み PERIOD_W1がそれを見る方法ですが、サイズの使用や日付の形で固定データムの使用のどちらも望ましい効果を得る ことができます。私は金曜日についての具体的な質問を投稿しました。ところで、あなたのコードは「バージョン」-不明なプロパティと書かれているため、コンパイルさ れません。


if(TimeDayOfWeek(TimeCurrent())==5)   //Пятница
 
r772ra:



修正したインジケータをファイルではなく、テキストで投稿してください。同志ヴェニンは、聞き取れない暗号を私に与え、答えを出さなかった。

#property indicator_separate_window

#property indicator_buffers 1

#property indicator_color1 ライム

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

double Buffer[];

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

int init()

{

SetIndexStyle(0,DRAW_HISTOGRAM, EMPTY, 2)を設定します。

SetIndexBuffer(0,Buffer;)を設定する。

return(0)です。

}

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


int deinit()

{


return(0)です。

}

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

int start()

{

int StartBar = Bars - IndicatorCounted() - 1;

for(int i = StartBar; i >= 0; i--)

{

if(TimeDayOfWeek(TimeCurrent())==5) //Friday(金曜日

if(TimeDayOfWeek(Time[i]))<TimeDayOfWeek(Time[i+1])

Buffer[i] = 0;

さもなくば

Buffer[i] = Buffer[i+1];

if(Close[i]>Close[i+1]&&Close[i+1]>=Close[i+2]){/今回の動きと前回の動きがともに増加している場合。

Buffer[i] += NormalizeDouble((Close[i] - Close[i+1])/Point,0);}.

if(Close[i]<Close[i+1]&&Close[i+1]<Close[i+2]){// 現在の動きと直前の動きが下降する場合

Buffer[i] += NormalizeDouble((Close[i+1] - Close[i])/Point,0);}.

if(Close[i]>Close[i+1]&&Close[i+1]<Close[i+2]){//現在の動きが成長していて、前の動きが下落している場合。

Buffer[i] += NormalizeDouble((Close[i+1] - Close[i])/Point,0);}.

if(Close[i]<Close[i+1]&&Close[i+1]>=Close[i+2]){// 現在の動きが下向きで前の動きが上向きである場合

Buffer[i] += NormalizeDouble((Close[i] - Close[i+1])/Point,0);}.

}

return(0)です。

}

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

 
Vitek2010:


修正したインジケータをファイルではなく、プレーンテキストで投稿してください。同志ヴェニンは、言いようのない暗号を発して、何も言わなくなった。


ビルド509

//+------------------------------------------------------------------+
//|                                                    Vitek2010.mq4 |
//|                        Copyright 2013, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2013, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_separate_window

#property indicator_buffers 1

#property  indicator_color1 Lime

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

double Buffer[];

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

int init()

{

SetIndexStyle(0,DRAW_HISTOGRAM, EMPTY, 2);

SetIndexBuffer(0,Buffer);

return(0);

}

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



int deinit()

{



return(0);

}

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

int start()

{

int StartBar = Bars - IndicatorCounted() - 1;

for(int i = StartBar; i >= 0; i--)

{

if(TimeDayOfWeek(TimeCurrent())==5) //Пятница

Buffer[i] = 0;

else

Buffer[i] = Buffer[i+1];

if(Close[i]>Close[i+1]&&Close[i+1]>=Close[i+2]){//если текущее и преддыдущее движение растут

Buffer[i] += NormalizeDouble((Close[i] - Close[i+1])/Point,0);}

if(Close[i]<Close[i+1]&&Close[i+1]<Close[i+2]){//если текущее и преддыдущее движение падают

Buffer[i] += NormalizeDouble((Close[i+1] - Close[i])/Point,0);}

if(Close[i]>Close[i+1]&&Close[i+1]<Close[i+2]){//если текущее лвижение растет а предыдущее падает

Buffer[i] += NormalizeDouble((Close[i+1] - Close[i])/Point,0);}

if(Close[i]<Close[i+1]&&Close[i+1]>=Close[i+2]){//если текущее движение падает а предыдущее растет

Buffer[i] += NormalizeDouble((Close[i] - Close[i+1])/Point,0);}

}

return(0);

}

//---------------------------------------------------------------------
 
歴史上の金曜日をどう定義するのか、それはわからない。
 
TarasBY:
となると、コンプライアンスライブラリへの言及はどうなるのでしょうか?


なぜなら

TarasBY:
Vitya、ここで整理することは何もありません。この人は、あるサンドボックス(EAとそのライブラリ)のグローバル変数を、別のサンドボックス(コンパイルされたライブラリ)で見えるようにしたいと思っています。:)))
 

皆さん、お願いがあります。このコードの一部を見て、私が3つの指標の入力条件を正しく入力したかどうかを確認してください。

分からないことだらけの勉強中なので。

E_ma=iMA(Symbol(,TimeFrame,period_ema,0,MODE_EMA,PRICE_CLOSE,1)となります。)
Cloce =iClose(Symbol(),PERIOD_H1,1);

e_ma=iMA(Symbol()、timeframe、period_ema、0、MODE_EMA、PRICE_CLOSE、1)。
cloce =iClose(Symbol(),PERIOD_M15,1)。

bbUP=iCustom(Symbol(),PERIOD_M5,"Bollinger Bands",BandsPeriod,BandsShift,BandsDeviations,1,0);
bbDOWN=iCustom(Symbol(),PERIOD_M5, "Bollinger Bands",BandsPeriod,BandsShift,BandsDeviations,2,0);

if(OrdersTotal()==0 && CountBuy()==0 && CountSell())
{
if(Cloce >E_ma && cloce >e_ma)
{
if(アスク<=bbDOWN)
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,0,0,", Magic,0,Green);
if(チケット>0)
{
TP = NormalizeDouble(Ask + TakeProfit * Point, Digits)です。
SL = NormalizeDouble(Ask-StopLoss * Point, Digits)です。
OrderModify(ticket, OrderOpenPrice(), SL, TP, 0);
}
}
さもなくば
if(Cloce <E_ma && cloce <e_ma)
{
if(ビッド>=bbUP)
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,0,0,", Magic,0,Red);
if(チケット>0)
{
TP = NormalizeDouble(Bid - TakeProfit * Point, Digits)です。
SL = NormalizeDouble(Bid+StopLoss* Point, Digits)です。
OrderModify(ticket, OrderOpenPrice(), SL, TP, 0);
}
}
}


return(0)です。

何かが間違っている場合は、エラーなしでコンパイルしますが、テスターの注文で開いていない私を修正します。 なぜなら? どこに条件のミス。 それを正しく記述する方法、私はまだ理解していない。指に誰か説明PLEASE!!!。

 
r772ra:
これは全部間違っている、ストーリー上のフライデーをどう定義すればいいのか、わからない。

週間周期の0化 if(TimeDayOfWeek(Time[i]) < TimeDayOfWeek(Time[i+1])) を削除してif(TimeDayOfWeek(TimeCurrent())==5) //Friday 多分これらの関数が何らかの形で連携すれば動くかも しれませんね。100種類くらい試したかもしれません。週足タイムフレームを使ったマルチタイムリーディングを下のタイムフレームに表示するのは簡単だと思うのですが、まだ解決策が見つかりません。 。

 
Vitek2010:

はい、週サイクルの0化 if(TimeDayOfWeek(Time[i]) < TimeDayOfWeek(Time[i+1])) を削除してif(TimeDayOfWeek(TimeCurrent())==5) に置き換えました//多分これらの関数が何とか一緒になればうまく いくと思うのですが、いかがでしょう?100種類くらい試したかもしれません。週足で表示されるマルチタイムリーディングを下位のタイムフレームで表示するのは簡単だと思うのですが、まだ解決策が見つかりません。


新しいウィークリー バーを開き、バッファをゼロにリセットして、ポイントを貯めるというアイデアがあります。
 
alsu:
Ticketを配列Ticket[5]とし、そこに5枚のチケットをすべて格納する。閉じるときは、すべてのチケットを適宜循環させる。

おおよそどのように実装するのか?他の関数であれば理解できたような気がするのですが、オーダーや配列はまだよく分かっていません。