コーディングの方法は? - ページ 194

 

EAの改造

こんにちは。

私のEAを修正してくれる経験豊富なプログラマーがいれば

私は非常に幸せです。

現在、オープンオーダーの状態です。

買い。

T_S -> ブルー

WPR > -20

デマーカー>高速MA

高速MA > 低速MA

売ります。

T_S -> 赤

WPR < -80

ディマーカー < 高速MA

高速MA < 低速MA

これはあまりにも多くの偽シグナルを送信しているので

変更したい。

次の場合に買い注文を出す

1- Fast MA < 0.5 (例えば、0.45, 0.52 などのように調整可能)

で、DemarkLineが上方にクロスしたとき。

2- 条件付き確認(選択できるようにする)。

WPR > -20のときオープンオーダーを出す。

ただし、注文の条件と確認は

を一定量以上離すことはできない。

(数字は調整可能)

条件が複数回発生した場合。

条件と同数の新規注文を出す。

終了条件または売り条件が発生するまで

または売り条件が発生するまで。

一次EXIT買い注文1:

下降線が高速MAを横切ったとき

0.65(数値は調整可能)以上の買いエリアで

と条件付き。

このオプションは、以下の場合にのみ可能です。

WPRの最大値が-10、最小値が-90に固定されている場合のみ可能です。

下方向のディマークラインが交差したら終了する。

0.7を超えたら終了。

例:Demarklineが0.75で%WPRが-15。

トレイリングストップオプション

自動ストップロスをオプションにする(IndicatorT_Sより)

ファイル:
 

この簡単なOB/OS indiをどなたかプログラミングしていただけませんか?

以下はその式です。(ハイ-オープン)+(クローズ-ロー)/(2×レンジ)。

レベル:64と37

ありがとうございます。

 

このEAを修正するのを手伝ってください。

こんにちは。

この簡単なEAの改造をお願いします。

このEAは、GBP/USDの買いとEUR/USDの売りを同時に建てるヘッジEAです。

ポジションに利益が出たら、EAは両方をクローズします。

問題は、ポジションのDDが大きい場合、EAが別の2つのポジションを開かず、ポジションが利益になるまで待ちすぎることです。

ポジションのDDが20pipsになったら、最初の2ポジションのように新しい2ポジションをオープンして、新しい2ポジションに利益が出たら、EAは最後の2ポジションだけをクローズして、まだ損失がある別のポジションを待つ必要があるのです。

例えば

EAはGBP/USDの買いとEUR/USDの売りを建てます。

この2つのポジションが20pips減少した場合、EAは新しい2つのポジション、GBP/USDの買いとEUR/USDの売りをオープンします。

2つ目のポジションが再び20pipsのDDであれば、EAは再び新しい2つのポジションを開きます...............等。

最後の2つのオープンポジションが20pipsの利益を得た場合、EAはこの最後の2つのポジションをクローズしなければなりません。

つまり、EAはGBP/USDの買いポジションとEUR/USDの売りポジションを複数持ち、最後の2つのポジションが20pipsの利益を出したら、その2つのポジションを決済しなければならないのです。

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

ファイル:
 

5桁のブローカー、130のエラー、helppppp!!!!

こんにちは、皆さん。

数日前、ODL(私のデモ口座を持って いる)は、5桁の価格に変更し、これですべての私のordersendは私に130エラーメッセージ(無効な停止または非正規化)と警告を送信し始め、この変更の前に私は問題があったことはありません。検索してみると、ブローカーが5桁の価格に変更されたときに「パッチ」というコードを見つけました。

double dXPoint=1;

if(Digits==3 || Digits==5){

dXPoint=10;

}

[/CODE]

With this little change, my buy function now is (later dXPoint will be global, also i tried leaving it as global, without success)

[CODE]

int openBuy() {

double dXPoint=1;

if(Digits==3 || Digits==5){

dXPoint=10;

}

double price=NormalizeDouble(Ask,Digits);

double sl=price-(stopLoss*dXPoint*Point);

double tp=price+(takeProfit*dXPoint*Point);

//Alert("PRICE: ",DoubleToStr(price,Digits)," sl: ",DoubleToStr(sl,Digits)," tp: ",DoubleToStr(tp,Digits));

orderActual = OrderSend(Symbol(), OP_BUY, LotSize(), price, Slippage*dXPoint,sl, tp, "BUY", g_magic_128, 0, Green);

if (orderActual < 1){

Alert("Order " , OrderTicket() , " Error:" , GetLastError() );

return (0);

}

return (1);

}

StopLossとtakeProfitが'0'のとき、注文は開かれますが、0より大きいとき、私は130エラーを得ました、(私はstoplossとtakeprofit値が価格の近くにないように見直したので、それは間違いでないところです)、私はまた、成功しなかった変数 'sl'と 'tp' を正規化しようとしました、私はコメントされた警告行で価格を見たとき価格は正しいです、私は私のコードで何が起こったのかわからない、お願い助けてください!!!私は'0'のときと同じです、'0'のとき、注文は開かれました、しかし、それは、0より大きいです、それは130エラーになる可能性があります。

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

 

NoLag V7.1 EAのインジケータ値とは?

EAに換算した値がどうしてもわかりません。

Igors?の投稿にあったこれらの設定を使って、うまく直線にすることができました。

iCustom(NULL,0,"nonlagma_3",0,15,0,0,10,0,0.0)

MAをずらしたり、移動させたりしたいのですが・・・。カーブは維持したい

初期値を変えてみましたが、うまくいきません。

私が目指しているのは

//---- 入力パラメータ

extern int Price = 3; //価格(0-終値、1-始値、2-高値、3-安値、4-中央、5-標準値、6-終値)に適用される。

extern int Length = 45; //NonLagMAの期間

extern int Displace = 0; //DispLaceまたはShift

extern double PctFilter = 0; //10進数によるダイナミックフィルター

extern int Color = 1; //カラーモード(1色)切替

extern int ColorBarBack = 1; //カラーモード用バーバック

extern double Deviation = -3; //上下方向の偏差

extern int AlertMode = 0; //サウンドアラート切替(0-off,1-on)

extern int WarningMode = 0; //Sound Warning スイッチ(0-off,1-on)

どんなヘルプでも結構です。

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

 

EAでは、以下のコードを使用します。

- トレンドまたは方向(up = 1, down = 1)について

trend=iCustom(Symbol(),TimeFrame,"NonLagMA_v7.1",Price,Length,Dispalce,PctFilter,Color,ColorBarBack,Deviation,0,0,3,bar);

[/CODE]

- for curve

[CODE]

line=iCustom(Symbol(),TimeFrame,"NonLagMA_v7.1",Price,Length,Dispalce,PctFilter,Color,ColorBarBack,Deviation,0,0,0,bar);

もし、NonLagMAを偏差でプロットしたい場合は、小さな値(例:0.5や-0.5)を使用する必要があります。

grstaka:
この値がどのようにEAに変換されるのかがどうしてもわかりません。

私は、Igors? の投稿にあった以下の設定を使って、直線にすることに成功しました。

iCustom(NULL,0,"nonlagma_3",0,15,0,0,10,0,0.0)

MAをずらしたり、移動させたりしたいのですが・・・。カーブは維持したい

初期値を変えてみましたが、うまくいきません。

私が目指しているのは

//---- 入力パラメータ

extern int Price = 3; //価格(0-終値、1-始値、2-高値、3-安値、4-中央値、5-標準値、6-終値)に適用される。

extern int Length = 45; //NonLagMAの期間

extern int Displace = 0; //DispLaceまたはShift

extern double PctFilter = 0; //10進数によるダイナミックフィルター

extern int Color = 1; //カラーモード(1色)切替

extern int ColorBarBack = 1; //カラーモード用バーバック

extern double Deviation = -3; //上下方向の偏差

extern int AlertMode = 0; //サウンドアラート切替(0-off,1-on)

extern int WarningMode = 0; //Sound Warning スイッチ(0-off,1-on)

どんな助けでも感謝します。

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

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

igorad:
EAでは、以下のコードを使用する必要があります。

- トレンドや方向性(上昇=1, 下降=-1)について

trend=iCustom(Symbol(),TimeFrame,"NonLagMA_v7.1",Price,Length,Dispalce,PctFilter,Color,ColorBarBack,Deviation,0,0,3,bar);

[/CODE]

- for curve

[CODE]

line=iCustom(Symbol(),TimeFrame,"NonLagMA_v7.1",Price,Length,Dispalce,PctFilter,Color,ColorBarBack,Deviation,0,0,0,bar);

もし、NonLagMAを偏差でプロットしたい場合は、小さな値(例えば、0.5や-0.5)を使用する必要があります。

ありがとうございます!!!

バーの意味は何ですか?それは+1 -1 バーですか?

 

せっかくなので...

...なぜ私のインジケータは常に SIM上で1-5分ごとに再読み込みされるか知っていますか?

 

5桁への変更に関するヘルプ

こんにちは、皆さん。

私は本当にこの問題であなたの助けを借りて、私は私のデモ口座を持って いるブローカーは、5桁の価格に変更し、これですべての私のordersendは130エラーメッセージ(無効なストップまたは非正規化)で私に警告を送信し始めた。検索してみると、ブローカーが5桁の価格に変更したときに「パッチ」というコードがあることがわかりました。この変更により、私の買い機能は次のようになりました。

int openBuy() {

double dXPoint=1;

if(Digits==3 || Digits==5){

dXPoint=10;

}

double price=NormalizeDouble(Ask,Digits);

double sl=price-(stopLoss*dXPoint*Point);

double tp=price+(takeProfit*dXPoint*Point);

//Alert("PRICE: ",DoubleToStr(price,Digits)," sl: ",DoubleToStr(sl,Digits)," tp: ",DoubleToStr(tp,Digits));

orderActual = OrderSend(Symbol(), OP_BUY, LotSize(), price, Slippage*dXPoint,sl, tp, "BUY", g_magic_128, 0, Green);

if (orderActual < 1){

Alert("Order " , OrderTicket() , " Error:" , GetLastError() );

return (0);

}

return (1);

}

ストップロスとテイクプロフィットが'0'のとき、注文は開かれますが、ゼロより大きいとき、私は130エラーを得た、私はストップロスとテイクプロフィットの値を見直し、価格の近くではないので、それは間違いではない場所です、私も成功せず変数 'sl'と 'tp''normalizing 試してみました、私はコメントされたアラートの行の価格を見たとき、価格の値が正しい、だから私は私のコードで何が起こるのか分からない、お願い助けて!!!!!!ありがとうございました。

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

 

ヘルプが必要です

RSI値が85以上の場合、RSI値は赤になり、15以下の場合、緑になり、中間の場合、青になるようにプログラムしています。

何が起こっているかというと、プログラムはすべて、数値が15以下のときは青のままであることを予期しています。

以下は、私が持っている4色のコードです。

色 color_1 = 0, color_2 = 0, color_3 = 0, color_4 = 0;

if(sym_1 < 15) color_1 = Green; else color_1 = Blue;

if(sym_1 >85) color_1 = 赤; else color_1 = 青;

if(sym_2 < 15)color_2= 緑; else color_2 = 青;

if(sym_2 >85) color_2 = 赤; else color_2 = 青; if(sym_3 < 15) color_2 = 緑; else color_2 = 青;

if(sym_3 < 15)color_3= Green;else color_3 = Blue;

if(sym_3 >85) color_3 = 赤; else color_3 = 青; if(sym_4 < 15) color_3 = 緑; else color_3 = 青。

if(sym_4 < 15)color_4= Green;else color_4 = Blue;

if(sym_4 >85) color_4 = 赤; else color_4 = 青; if(sym_4 < 15) color_4 = 緑; else color_4 = 青。