[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 33

 
Andrew1001:

こんばんは。どこがどう間違っていたのか、ご指導ください。

最初に - あなたの投稿に適切なボタンからコードを挿入してください。

第二に、MQL4にはIf関数がありません。

int start()


{
int cnt, ticket, total, profit;
total = OrdersTotal();
if(total < 1)
{
ticket=OrderSend(Symbol(),OP_BUY,LotTrend,Ask,0,Ask-SL*Point,Ask+TP*Point,0,511,0,Green);
}
profit = OrderProfit();
If (OrderProfit < 0) /*если сработал стоплосс*/
{
ticket=OrderSend(Symbol(),OP_SELL,LotTrend,Bid,0,Bid+SL*Point,Bid-TP*Point,0,511,0,Red);
} /*открываем позицию в противоположном направлении*/
return;
}

Мне выдает такие ошибки:
'If' - function is not defined
'<' - left parenthesis expected
'{' - semicolon expected
ПОДСКАЖИТЕ ПОЖАЛУЙСТА что я сделал не так! 
 
Arles:

皆さん、こんにちは。

1週間ほど前からプログラミングの勉強を始めたのですが、面白い結果が出ました。信用できるのかどうかずっと前からインジケータを考えていて、今ようやくコードで実装することができたところです。


全体的にいい感じです。最大利益トレードと平均利益トレードの違いについての質問があります。

2003年、2004年など、異なる時間枠で実行してみてください。

ある年はプラスで、次の年はマイナスになるケースもありました。一年一年では無理です。

 
Andrew1001:

こんばんは。どこがどう間違っていたのか、教えてください

int start()


{
int cnt, ticket, total, profit;
total = OrdersTotal();
if(total < 1)
{
ticket=OrderSend(Symbol(),OP_BUY,LotTrend,Ask,0,Ask-SL*Point,Ask+TP*Point,0,511,0,Green);
}.
profit = OrderProfit();
If (OrderProfit < 0) /*if stop loss triggered*/
{
ticket=OrderSend(Symbol(),OP_SELL,LotTrend,Bid,0,Bid+SL*Point,Bid-TP*Point,0,511,0,Red);
}}./*逆方向のオープンポジション*/
return;
}.

こんなエラーが出るんです。
'If' - function is not defined
'<' - left parenthesis expected
'{' - semicolon expected
PLEASE PLEASE tell me what I did wrong!


1.(豆知識)"If "のスペルは小さい "if "である。

2.(OrderProfit() 関数を使うには、 OrderSelect()関数で 利益を読み取る注文そのものを選択する必要があります(主な内容)。

最後に閉じた注文の結果を知るには、最後に閉じた注文を見つける必要が あります。

 
abolk:


1.(豆知識)"If "は "if "を小さくして書きます。

2.(最も重要)OrderProfit() 関数を使用するには、その利益を読み取る注文そのものを OrderSelect() 関数で選択 する必要があります。

最後に閉じた注文の結果を知るには、最後に閉じた注文を見つける必要が あります。

ありがとうございました。どうすればいいか教えてください!))
 
Arles:

皆さん、こんにちは。

1週間ほど前からプログラミングの勉強を始めたのですが、面白い結果が出ました。信用できるのかどうかこのインジケータはずいぶん前に考案したばかりで、今になってようやくコードに実装することができたんです。


ここでテスターも露骨に間違ったカウント、またはむしろエラーで、または何を、あなたは、結果を参照して、-22負のトランザクションが最小になる場合は、私はすべてを正しく理解するならば、あなたは、絶対ドローダウン4することはできません。00、あなたは1つの貿易はすでに20.00を与える、はい、さらに行くには、ところで、あなたはドローダウン29049(63%)を持っていますが、その後再び、どのようにあなたが約-20にのみ2つの取引を持っている場合、そう得ることができる))短いテスター自体としてカウントされないものだけです。
 

すべてのストップを同じレベルに移動させる関数を書きましたが、結局、各オープンオーダーは、オープン時に設定された独自のストップロスでクローズします。

void OrModSL(string period)//15分足チャートの一番下のフラクタルに ストップを移動させる関数

{
if(期間=="M15")//if期間H1
{
for(int i=OrdersTotal()-1;i>=0;i--)
{
RefreshRates();
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderType()==OP_BUY)//if last buy order type
{
OrderModify(OrderTicket(),OrderOpenPrice(),dnfrM15,OrderTakeProfit(),0,Blue);
}.

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderType()==OP_SELL)
{
OrderModify(OrderTicket(),OrderOpenPrice(),upfrM15,OrderTakeProfit(),0,Blue);// If last order sell
}
}

return(0)です。


 

こんにちは。

改めて、前のファイルを削除せずに情報を追記する方法を示す例かリンクをお願いしたいのですが、ファイルポインタは特に興味があります(今まで使ったことがありません)。

ありがとうございます。

 

コードの書き方をどこで学べるのかわからないのですが、アドバイザーが注文を出したり、ストップや利益を入れたりできるように、コードで何をどう書けばいいのか、はっきり正確に書いてあるサイトはありますか? アドバイザーを注文するお金はないですが、アイデアはとてもいいと思います。

 
sting-igor:

コードの書き方をどこで学べるのかわからないのですが、アドバイザーが注文を出したり、ストップや利益を入れたりできるように、コードで何をどう書けばいいのか、はっきり正確に書いてあるサイトはありますか? アドバイザーを注文するお金はないですが、アイデアはとてもいいと思います。



EAを注文するお金はありませんが、発想は非常に良いと思います。