[アーカイブ!】無料でアドバイザーを書きます。 - ページ 22

 
nab17:
こんにちは プログラマーの皆様

質問があります。他の注文に影響を与えることなく、2つの特定の注文をその合計利益で決済するEAが必要です。
適当なものが見つからない。
ありがとうございました。

二度とスパムをしないで頂きたい。1つのスレッドに1つの書き込みがあれば、十分聞き分けられる。他は削除しました。
 
Vinin:
これ以上スパムをしないでください。1つのスレッドに1つの書き込みがあれば、十分聞き分けられる。残りは削除しました。
それは、このような礼儀正しく忍耐強いモデレーターはどこから来るのでしょうか?理解できない。
 
EAコードのエラーを修正するのを手伝ってください。Laguerre.mq4インジケータをベースにEAを書いてみました。コンパイル時にエラーが発生しました。コード内のエラー箇所は太字になっています。インジケータはExpert Advisorのボディに配置されています。


//+------------------------------------------------------------------+
//|Laguerre+.mq4||Laguerre+.mq4||Laguerre+.mq4
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+

//---- 入力パラメータ
extern int TrailingStop=0;
extern int StopLoss=0;
extern double lots=0.1;
extern double gamma = 0.7;
extern int Price_Type=0;
//---- バッファ
double Filter[];
double L0[]です。
double L1[];;
double L2[]。
double L3[]です。

//+------------------------------------------------------------------+
//| カスタムインジケータ 初期化関数
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(5)です。
//---- インジケータ
SetIndexStyle(0, DRAW_LINE)を設定します。
SetIndexDrawBegin(0, 1)を設定します。
SetIndexLabel(0, "LaguerreFilter")を設定します。
SetIndexBuffer(0,Filter)を設定します。
SetIndexBuffer(1, L0)を設定します。
SetIndexBuffer(2, L1)を設定します。
SetIndexBuffer(3, L2)を設定します。
SetIndexBuffer(4, L3)を設定します。
//----
string short_name="LaguerreFilter(" + DoubleToStr(gamma, 2) + ")";
IndicatorShortName(short_name)。
return(0)です。
}

//+------------------------------------------------------------------+
//| カストマーインジケーター初期化機能
//+------------------------------------------------------------------+
int deinit()
{
return(0)です。
}

//+------------------------------------------------------------------+
//| カスタムインジケータ反復関数
//+------------------------------------------------------------------+
int start()
{
int制限。
int counted_bars = IndicatorCounted();
ダブルCU、CD
//---- 最後にカウントされたバーが再カウントされます。
if (counted_bars>0)
counted_bars--。
さもなくば
counted_bars = 1;
limit = Bars - counted_bars;
//---- RSIの計算
for (int i=limit; i>=0; i--)
{
double Price=iMA(NULL,0,1,0,0,Price_Type,i);

L0[i] = (1.0 - gamma)*Price + gamma*L0[i+1];
L1[i] = -gamma*L0[i] + L0[i+1] + gamma*L1[i+1] とする。
L2[i] = -gamma*L1[i] + L1[i+1] + gamma*L2[i+1] とする。
L3[i] = -gamma*L2[i] + L2[i+1] + gamma*L3[i+1] とする。

CU = 0;
CD = 0;
if (L0[i] >= L1[i])
CU = L0[i] - L1[i]とする。
さもなくば
CD = L1[i] - L0[i]とする。
if (L1[i] >= L2[i])
CU = CU + L1[i] - L2[i]である。
さもなくば
CD = CD + L2[i] - L1[i]とする。
if (L2[i] >= L3[i])
CU = CU + L2[i] - L3[i]です。
さもなくば
CD = CD + L3[i] - L2[i]である。

if (CU + CD != 0)
Filter[i] = (L0[i] + 2 * L1[i] + 2 * L2[i] + L3[i]) / 6.0;
}
return(0)です。

//+------------------------------------------------------------------+
//| エキスパートスタート機能
//+------------------------------------------------------------------+
int start()
{
if (注文合計()>0)
{
CU = 0;
CD = 0;
{
OrderSelect(SELECT_BY_POS);
if (OrderSymbol()==Symbol())
{
if (OrderType()== OP_BUY)
{
if ((L0[i] >= L1[i])CU = L0[i] - L1[i],(L1[i] >= L2[i])CU = CU + L1[i] - L2[i],(L2[i] >= L3[i])。
OrderClose(OrderTicket(),OrderLots())です。
else CU++;
}
if (OrderType()== OP_SELL)
{
if (CD = L1[i] - L0[i],CD=CD+L2[i]-L1[i],CD=CD+L3[i]-L2[i])とする。
オーダークローズ(OrderTicket(),OrderLots())
さもなければCD++。
}
}
}

if (CU > CD && CU == 0)
{
OrderSend(Symbol(),OP_BUY,lots,Ask,0/*(Ask-StopLoss*Point)*/,0,);
}
if (CU < CD && CD ==0)
{
OrderSend(Symbol(),OP_SELL,lots,Bid,0/*(Bid+StopLoss*Point)*/,0,);
}



//----
return(0)です。
}
//+------------------------------------------------------------------+
 
2回のスタート。教科書を読み直し、典型的なEAの 構造を分解する。
 
私はパターンで取引システムから読み取る顧問が必要です。 1指標の矢印は、矢印の方向に注文を開く必要があり、それが変更された場合、前の注文を閉じて、新しいものを開き、ストップロスとテイクプロフィットを設定するとき。
 
kvg31:

どんな複雑なものでもアドバイザーとして書きます。というのが大きなポイントです。どのように使うか 気にしない:売れるだろう-気にしない(お金を要求しない)。

P.S.インジケーターが必要な場合は、それを使用するストラテジーを教えてください。


こんにちは!MTD 4の取引ロボットが必要です。私は取引の例と写真を送ることができます。money3@inbox.ru 写真と説明文を添えて、メールに記載されたすべての詳細を転送します。
 
Oleg888:

こんにちは!MTD 4上の取引ロボットが必要です。私は取引の例と画像を送信することができます。money3@inbox.ru 写真と説明文を添えて、詳細をメールにてお送りします。
そして、MTD 4の写真も。
 
granit77:
2回のスタート。教科書を読み直し、典型的なEAの構造を分解する。

では、間違いがわかるように訂正していただけますか?
 
ramses:
では、間違いでないことがわかるように、エラーを修正してもらえますか?
なぜ誰もあなたのコードを修正しないか知っていますか?なぜなら、教科書を読んでいないことがはっきりわかるからで、その場合は難しいし、おそらく無駄な会話になる。
 
こんにちは、私はスプレッドを考慮して、市場からの与えられた距離(例えばベイストップと売り指値、オプションで一方向に配置するのが良い)で両方の方向にポジションを配置するEAを必要としています。ポジションが市場にない間はトレーラを有効にし、オープンした後はブレークイーブンに移行することが可能です(柔軟な基準による)。また、前のポジションが決済された後に、自動的にポジションを開いたり閉じたりするオプションがあれば、最高です。