FuzzyTrade

MQL5プログラミング研究会の案内を目的としています。MQL5プログラミングミングをやさしく解説。要求工学から開発プロセスまで、オブジェクト指向の小さなプログラミングから説明。

MQL5要求定義03


MQL5要求定義03

ユーザー(日本ハム)

要求定義(匿名の列挙型)要求抽出01
1.ゴール要求
(1)スクリプトで1回きりの計算する。
(2)構造体を定義。
(3)匿名の列挙型を定義し構造体にネストする。
(4)試作品のテストを行う。

ユーザー(日本ハム)
要求定義(匿名の列挙型)要求抽出02
プロトタイププログラム1

struct settings{
double take;
double stop;
enum {
Buy,
Sell
}t;
};


ベンダー(ソフトバンク)

要求定義(匿名の列挙型)要求確認01
次の項目の要求の妥当性を検討することになった。
1.要求の真理さ
2.要求の正当さ
3.要求の誠実さ

 

FuzzyTrade(MQL5プログラミング研究会)の案内はこちらから

MyFuzzyTrade

よろしかったら「平尾容疑者の脱走とFX」の記事もご覧ください

FUZZYTRADE




ベンダー(ソフトバンク)

要求定義(匿名の列挙型)要求確認02
要求の妥当性を検討の結果
MQL5では匿名の列挙型を使用出来ないことが判った。
テスト結果
(1)コンパイルは異状なく終了。
(2)MT5では何も表示されない。
(3)MT5のリスタートが必要。

ベンダー(ソフトバンク)

要求定義(匿名の列挙型)要求確認03
テストプログラム1
//ここにプロトタイププログラム1
void OnStart()
  {  
  settings a;
  a.take=50.0;
  a.stop=100.0;
  a.t=1;  
  Print("trend = ",a.t," stop = ",a.stop) ;   
  }

ベンダー(ソフトバンク)

要求定義(匿名の列挙型)要求確認04
プロトタイププログラム2
(プロトタイププログラム1の修正)
struct settings{
double take;
double stop;
enum trend{
Buy,
Sell
}t;
};


ベンダー(ソフトバンク)

要求定義(匿名の列挙型)要求確認05
上記プログラムのテスト結果は問題なかった。
テスト結果
(1)コンパイルは異状なく終了。
(2)MT5で正常に表示。

ユーザー(日本ハム)とベンダー(ソフトバンク)の打ち合わせ

要求定義(匿名の列挙型)要求確認06
ユーザーとベンダーは会議を開き、
要求のすり合わせを行った。
プロトタイププログラム1は廃棄されることになった。 
代わって、プロトタイププログラム2が採用されることになった。