//+------------------------------------------------------------------+
//| パラメータ |
//+------------------------------------------------------------------+
extern string X = "Basic Settings"; //基本設定
extern int MagicNumber = 10011; //マジックナンバー
extern double TakeProfit = 200; //リミット[pips]
extern double StopLoss = 150; //ストップ[pips]
extern double Lots = 0.1; //ロットサイズ
extern int Cmd = OP_BUY; //エントリー方法[OP_BUY/OP_SELL]
extern int Slippage = 30; //スリッページ
extern string XX = "Order Settings"; //新規注文設定
extern bool CheckOrderHour = true; //時間の判定有無
extern int OrderHour = 7; //時間
extern bool CheckOrderMinute = true; //分の判定有無
extern int OrderMinute = 5; //分
extern bool CheckOrderSeconds = true; //秒の判定有無
extern int OrderSeconds = 0; //秒
extern string XXX = "Close Settings"; //決済注文設定
extern bool CheckCloseHour = true; //時間の判定有無
extern int CloseHour = 7;//時 //時間
extern bool CheckCloseMinute = true; //分の判定有無
extern int CloseMinute = 40;//分 //分
extern bool CheckCloseSeconds = true; //秒の判定有無
extern int CloseSeconds = 0;//秒 //秒
//+------------------------------------------------------------------+
//| 開始関数 |
//+------------------------------------------------------------------+
int start()
{
if((TimeHour(TimeCurrent()) == OrderHour
|| CheckOrderHour == false)
&&(TimeMinute(TimeCurrent()) == OrderMinute
|| CheckOrderMinute == false)
&&(TimeSeconds(TimeCurrent()) == OrderSeconds
|| CheckOrderSeconds == false))
{
if(Cmd == OP_BUY){
OrderSend(Symbol(),
Cmd,Lots,
Ask,
Slippage,
Ask-StopLoss*Point,
Ask+TakeProfit*Point,
"",
MagicNumber,
0,
Red);
return(0);
}
if(Cmd == OP_SELL){
OrderSend(Symbol(),
Cmd,Lots,
Bid,
Slippage,
Bid+StopLoss*Point,
Bid-TakeProfit*Point,
"",
MagicNumber,
0,
Blue);
return(0);
}
}
if((TimeHour(TimeCurrent()) == CloseHour
|| CheckCloseHour == false)
&&(TimeMinute(TimeCurrent()) == CloseMinute
|| CheckCloseMinute == false)
&&(TimeSeconds(TimeCurrent()) == CloseSeconds
|| CheckCloseSeconds == false))
{
for(int i = 0; i < OrdersTotal(); i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == false)
{
break;
}
if(OrderSymbol() == Symbol()
&& OrderMagicNumber() == MagicNumber)
{
if(OrderType() == OP_BUY)
{
OrderClose(OrderTicket(),
OrderLots(),
Bid,
Slippage,
Yellow);
return(0);
}
if(OrderType() == OP_SELL)
{
OrderClose(OrderTicket(),
OrderLots(),
Ask,
Slippage,
Lime);
return(0);
}
}
}
}
return(0);
}
No.2ベストアンサー
- 回答日時:
お困りとのことなので、対策例を。
int start()
{
の後ろに、
if(OrdersTotal() == 0){
を入れる。さらに、
if((TimeHour(TimeCurrent()) == CloseHour
の前に
}
を一つ足す。
これで、問題解決です。
しかし、MQLを直接書くとスペースが消えてしまうので、マヌケなプログラムに見えるのが、、、今の悩みです。。。
No.1
- 回答日時:
な~んだ、ちゃんとプログラムを書いてたなら、そう言ってくれればいいのに ^^;
さて、それではこっちも出し惜しみをしましょう(ウソ)。
「ポジションを同時に2個持つのを直したい」と書かれてますが、2つ持つのは偶然でしかなく、1つだけの時もありますよね。
もっと言えば、ちょっといじると、無限にポジションを持ってしまう恐れがある危険なプログラムです。
以上がヒントです。
この回答への補足
返答ありがとうございます。
おっしゃるとおり1個のときもあれば2個の時もあります。確かに複数持つ場合もありました。
どうすればいいのですか?実はかなり困ってますm(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- FX・外国為替取引 mql4のコンパイルエラー箇所の修正お願いします。 1 2023/03/15 16:14
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- Java java 引数 戻り値のあるメソッド 3 2023/02/12 06:23
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# C言語でif文が予想と違う動きをする件について7 4 2023/03/20 00:26
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
証拠金が底を尽きてしまいまし...
-
円相場ですが一長一短あります...
-
空港などの為替でユーロに変え...
-
このままアメリカのインフレが...
-
FRBが利下げのことを少しでも言...
-
セントレア空港内の以下の外貨...
-
1ドル154円後半なのになぜ為替...
-
こんなに円安が進行しているの...
-
円安で儲けている輸出業者に聞...
-
為替
-
ドル円はいくらまであがるでし...
-
円安らしいですが、今、円安で...
-
外国為替市場への介入について...
-
情報商材はなぜ高いのですか? ...
-
親類が投資詐欺に遭ってるかも...
-
円が紙くずになるとニュースで...
-
Faxに於いて、ドル/円を表すの...
-
機関投資家や大口投資家
-
マイナス金利を解除すると円安...
-
mt5の音が出なくなった
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
2回戦止まりは2回戦は勝ってい...
-
mql4のコンパイルエラー箇所の...
-
MT4によるバックテストの信頼性...
-
MT4で時間を指定するにはどのよ...
-
MT4で取引時間を指定する。
-
MT4のEAで通貨ペア毎に最...
-
メタトレーダ4で自動売買をした...
-
【FX】MT4にてプログラムを作成...
-
MT4におけるトレーリングス...
-
MT4 ボリンジャーバンドタッチ...
-
Tera Termが途中で切れるのです...
-
遠藤さくらと言う人が、毎日100...
-
80歳の高齢者ですが、金融庁に...
-
為替データをエクセルにダウン...
-
MT4のHeiken Ashi Smoothedをサ...
-
FXの日足時系列データをダウン...
-
MT5のBIT(売り)ASK(買い)のライ...
-
【MQL4】ZigZagの天底の値の取得
-
MT4 フォワードテストってどう...
-
陽線・陰線が切り替わったらア...
おすすめ情報