[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 326

 
drknn:


問題の定義から始める。

- チャート上のラインの存在を検出するスクリプトを使用します。

- 行が存在する場合、その開始価格と終了価格を変数に表示し、バー番号(または時間)を変数に表示します。

- スクリプトで必要な計算をする。

- 結果を画面に印刷する(またはテキスト文書やExpert Advisor Journalに印刷する)。

この4つの問題をすぐに解決できない場合は、まず語学の勉強から始めましょう。


drknn! ありがとう ございます。調べてみます!!!
 
Zhunko:

周知の通りです。いろいろと書かれていますね。物語を作るのにどんなツールを使ったかは関係ありません。ポイントは、Expert Advisorが動作するようにチャートを更新することです。

これは、WinAPIによって行うことができます。ここでは何度も説明しています。ライブラリーを 書きました。ここに 掲載しました。

チャートの自律的な更新を制御するための関数が含まれています。スクリプトや専門家を必要としません。しかし、万人向けではありません。また、Expert Advisorやスクリプト、インジケーターからチャートを更新する機能もあり、誰でも利用することができます。使いこなすのはもっと難しい。どの番組でチャートを更新するかを考えなければならないからです。例はテストスクリプトにあります。

ログファイルの最後の行を「抽出して」コメントに表示するための既成のソリューションを偶然にもお持ちですか?
 

オタクを助けようただ、質問の本質をブラッシュアップするために。

チャート上に2つのポイントがあります。ポイント2 - ゼロバーに近い方とt.1 - ヒストリーのゼロバーから遠い方です。この2点からトレンドラインを 引いてみる。

これらの点間のセグメントを、N (変数 int RayLong) 個先のインターバルで延長することによって。コードは以下の通りです。

if (RayLong!=0 && point1s==true && point2s==true)
{
//расчет цены в будущем
if (price11s>price22s) {price11s=NormalizeDouble(price11s+((price11s-price22s)*RayLong),Digits);} 
if (price11s<price22s) {price11s=NormalizeDouble(price11s-((price22s-price11s)*RayLong),Digits);}
//расчет бара в будущем
int bis=iBarShift(Symbol(),0,time22s,true)-iBarShift(Symbol(),0,time11s,true);
Print("Sup "+iBarShift(Symbol(),0,time22s,true)+" "+iBarShift(Symbol(),0,time11s,true)+" "+bis+
" sec="+bis*Period()*60*NormalizeDouble(RayLong,Digits)+" Time="+TimeToStr(time11s+(Period()*60*
(iBarShift(Symbol(),0,time22s,true)-iBarShift(Symbol(),0,time11s,true)+1)*RayLong),TIME_DATE|TIME_SECONDS));
time11s=time11s+(Period()*60*((iBarShift(Symbol(),0,time22s,true)-iBarShift(Symbol(),0,time11s,true))*RayLong));
//time11s=time11s+((time11s-time22s)*RayLong); //альтернативный вариант предыдущей строки
}
問題は、計算点が日付の上で浮いていることです。値段はOKです。一方、日付は細かいか、浮いているか、どちらかです。プリントを見ると、決済日が土日や祝日など、予定にないときに発生しています。解決策をご提案ください。
 
forexnew:
ログファイルの最後の行を「抽出して」コメントに表示するための既成のソリューションを偶然にもお持ちですか?
これでは使い物になりません。ログファイルは、MT4アップロード後、またはMT4に時間があるときに記入されます。
 
ZZZEROXXX:

オタクを助けようただ、質問の本質をブラッシュアップするために。

チャート上に2つのポイントがあります。ポイント2 - ゼロバーに近い方とt.1 - ヒストリーのゼロバーから遠い方です。この2点からトレンドラインを引いてみる。

これらの点間のセグメントを、N (変数 int RayLong) 個先のインターバルで延長することによって。コードは以下の通りです。

問題は、計算点が日付の上で浮いていることです。値段の割に全てOKです。一方、日付は細かいか、浮いているか、どちらかです。Printを使って、決済日が土日や祝日など、予定にないときに起こることを把握しています。この問題を解決する方法をアドバイスしてください。

問題がよくわからない。価格とバーで 描画している場合チャートには週末と非週末のバーが ありません。したがって、トレンドは取引日の日付に対応する次のバーまで続くはずです。

それとも、あなたにとっては違うのでしょうか?

 

次のコードで、配列が保留中の注文の ティケットで埋められるかどうか教えてください。

int tiket[];

int SetFunk()

{

for (i=0; i<=k-1; i++)

{
ticket[i]=OrderSend(Symbol(,OP_BUYSTOP,0.01*Lots,Ask+Step*i*Point,3,Bid-S_Loss*Point,0,",10000,0,Green);

ticket[i+k]=OrderSend(Symbol(,OP_SELLSTOP,0.01*Lots,Bid-Step*i*Point,3,Ask+S_Loss*Point,0,"",10000,0,Green);

}

}


、print()しようとするとnullが返されます。

 
スタティック・メモリ・クラスは 何のためにあるのですか?可能であれば、コードでの使い方の良い例と、他のメモリクラスと区別するための特徴を教えてください。こいつは使い物にならなさそうだな、誰得?
 
myrzila:

次のコードで、配列が保留中の注文のティケットで埋められるかどうか教えてください。

int tiket[];

int SetFunk()

{

for (i=0; i<=k-1; i++)

{
ticket[i]=OrderSend(Symbol(,OP_BUYSTOP,0.01*Lots,Ask+Step*i*Point,3,Bid-S_Loss*Point,0,",10000,0,Green);

ticket[i+k]=OrderSend(Symbol(,OP_SELLSTOP,0.01*Lots,Bid-Step*i*Point,3,Ask+S_Loss*Point,0,"",10000,0,Green);

}

}


、print()しようとするとnullが返されます。

まず配列のサイズを設定 し (ArrayResize)、それから作業を行います。
 

こんにちは。

EAがあるんです。

どうすれば画像に表示されている移動平均線の水準を表示させることができるのでしょうか?

今はゼロが表示されるだけです。


//+------------------------------------------------------------------+
//| エキスパート初期化関数
//+------------------------------------------------------------------+
int init()
{
//----

//----
return(0)です。
}
//+------------------------------------------------------------------+
//| 専門家による初期化関数
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0)です。
}
//+------------------------------------------------------------------+
//| エキスパートスタート機能
//+------------------------------------------------------------------+
int start()
{
//----
SetLabel("MA_LABEL",DoubleToStr(iMA(Symbol(),13,30,8,MODE_SMA,PRICE_CLOSE,0)-0.0015,0),赤,10,20,0,20).を設定します。
SetLabel("MA_LABEL2",DoubleToStr(iMA(Symbol(),13,30,8,MODE_SMA,PRICE_CLOSE,0),0),赤,10,50,0,20).を設定します。
//----
return(0)です。
}
//+------------------------------------------------------------------+


void SetLabel(string nm, string tx, color cl, int xd, int yd, int cr=0, int fs=9) { { SetLabel(string nm, string tx, color cl, int xd, int yd, int cr=0, int fs=9) }.
if (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_LABEL, 0, 0,0);
ObjectSetText(nm, tx, fs)です。
ObjectSet(nm, OBJPROP_COLOR, cl)です。
ObjectSet(nm, OBJPROP_XDISTANCE, xd);
ObjectSet(nm, OBJPROP_YDISTANCE, yd)です。
ObjectSet(nm, OBJPROP_CORNER, cr)です。
ObjectSet(nm, OBJPROP_FONTSIZE, fs)です。
}




 
emilien:


こんにちは。

EAがあるんです。

画像に表示されている移動平均線の水準を表示させるにはどうしたらよいですか?

今はゼロが表示されるだけです。


//+------------------------------------------------------------------+
//| エキスパート初期化関数
//+------------------------------------------------------------------+
int init()
{
//----

//----
return(0)です。
}
//+------------------------------------------------------------------+
//| 専門家による初期化関数
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0)です。
}
//+------------------------------------------------------------------+
//| エキスパートスタート機能
//+------------------------------------------------------------------+
int start()
{
//----
SetLabel("MA_LABEL",DoubleToStr(iMA(Symbol(),13,30,8,MODE_SMA,PRICE_CLOSE,0)-0.0015,0),赤,10,20,0,20).を設定します。
SetLabel("MA_LABEL2",DoubleToStr(iMA(Symbol(),13,30,8,MODE_SMA,PRICE_CLOSE,0),0),赤,10,50,0,20).を設定します。
//----
return(0)です。
}
//+------------------------------------------------------------------+


void SetLabel(string nm, string tx, color cl, int xd, int yd, int cr=0, int fs=9) { { SetLabel(string nm, string tx, color cl, int xd, int yd, int cr=0, int fs=9) }.
if (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_LABEL, 0, 0,0);
ObjectSetText(nm, tx, fs)です。
ObjectSet(nm, OBJPROP_COLOR, cl)です。
ObjectSet(nm, OBJPROP_XDISTANCE, xd);
ObjectSet(nm, OBJPROP_YDISTANCE, yd)です。
ObjectSet(nm, OBJPROP_CORNER, cr)です。
ObjectSet(nm, OBJPROP_FONTSIZE, fs)です。
}




doubleiMA( string symbol, inttimeframe, int period, int ma_shift, int ma_method, int applied_price, int shift)

タイムフレーム13については、まだ聞いていません