質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
メタプログラミング

メタプログラミングとは、プログラミング技法の一つ。プログラムをプログラミングすることを指します。他のプログラムや、そのプログラム自体を操作・出力するメタプログラムを記述する作業をメタプログラミングと呼びます。

コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

関数型プログラミング

関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

解決済

MT4 EA プログラミング初心者です。コンパイルエラー表示で悩んでます

max4
max4

総合スコア1

メタプログラミング

メタプログラミングとは、プログラミング技法の一つ。プログラムをプログラミングすることを指します。他のプログラムや、そのプログラム自体を操作・出力するメタプログラムを記述する作業をメタプログラミングと呼びます。

コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

関数型プログラミング

関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

1回答

0評価

0クリップ

759閲覧

投稿2021/06/25 10:03

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。
MT4 EA Meta Editorでエラー修正お願いします。
MT4 EA プログラミング初心者です。rciを使ってエントリー、決済、のEAを作成してます。
ブレイクイーブンを追加したいのですが、以下のエラーメッセージが発生しました。
解決方法を教えてください。
以下、内容です。対応する箇所(line)の頭に、番号(①②③)が振ってあります。

発生している問題・エラーメッセージ

エラーメッセージ①'}'-unexpected end of program ②'{'-unbalanced parentheses ③'Calculated_Point' - undeclared identifie

該当のソースコード

ソースコード#include <MyLib.mqh> #include <stdlib.mqh> #property strict #define COMMENT "s" // 外部パラメータ extern double Lots = 0.01; extern int Slippage = 3; extern int BBPeriod = 7; extern int Magic = 1; extern double Break_Even = 20;double Use_Point = 0;int Ticket = 0; //関数の宣言 double AdjustPoint(string Currency) { int Calculated_Digits = MarketInfo(Symbol(),MODE_DIGITS); if(Calculated_Digits == 2 || Calculated_Digits == 3) { double Calculated_Point = 0.01; } else if(Calculated_Digits == 4 || Calculated_Digits == 5) { double Calculated_Point = 0.0001; } return(③Calculated_Point); } int init() { Use_Point = AdjustPoint(Symbol()); return(0); } int start() ②{ double RCI1 = iCustom(NULL, 0,"SpearmanRankCorrelation",BBPeriod,0, 1); if(Ticket > 0 && RCI1 < 0.8) { double Closed = OrderClose(Ticket,Lots,Bid,Slippage,Magenta); if(Closed == true) { Ticket = 0; } } else if(Ticket > 0 && RCI1 > -0.8) { double Closed = OrderClose(Ticket,Lots,Ask,Slippage,Magenta); if(Closed == true) { Ticket = 0; } } if(OrdersTotal() == 0 && RCI1 < -0.7) //&& L <= -0.8 { Ticket = OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,0,0,COMMENT,Magic,0,Magenta); } if(OrdersTotal() == 0 && RCI1 > 0.7) //&& L >= 0.8 && { Ticket = OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,0,0,COMMENT,Magic,0,Magenta); } //ブレイクイーブン for(int i = OrdersTotal() -1; i >= 0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == true) { if(OrderMagicNumber() == Magic && OrderSymbol() == Symbol()) { if(OrderType() == OP_BUY) { double Pips_Profit = Bid - OrderOpenPrice(); double Minimum_Profit = Break_Even * Use_Point; if(Pips_Profit >= Minimum_Profit && OrderOpenPrice()! = OrderStopLoss()) { bool Modified = OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice() ,OrderTakeProfit(), 0, Orange); } } else if(OrderType() == OP_SELL) { Pips_Profit = OrderOpenPrice() - Ask; Minimum_Profit = Break_Even * Use_Point; if(Pips_Profit >= Minimum_Profit && OrderOpenPrice()! = OrderStopLoss()) { Modified = OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice(),OrderTakeProfit(), 0, Orange); } } } } return(0); ①}

試したこと

ここに問題に対して試したことを記載してください。
10個エラー表示されましたが、本、ネットなど調べて解決しましたが、
この3個のエラーのどの様に書けばいいのか分かりません。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

メタプログラミング

メタプログラミングとは、プログラミング技法の一つ。プログラムをプログラミングすることを指します。他のプログラムや、そのプログラム自体を操作・出力するメタプログラムを記述する作業をメタプログラミングと呼びます。

コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

関数型プログラミング

関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。