上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

検証して ・・・

実際に121証券で使い始めた ・・・

プログラムも ・・・

暗雲が立ち込めますた 。。。

一度、このプログラムと121から、撤退しまふ 。。。

マイナス 820pips 程 ・・・ \(゜ロ\)ココハドコ? (/ロ゜)/アタシハダアレ?

mnkbe6y46nb6y4.jpg

FX ・・・ 2度目の冬眠ですじゃ 。。。


スポンサーサイト

FC2blog テーマ:ダメ人間日記 - ジャンル:日記

【2009/10/21 21:56】 | FX
トラックバック(0) |
いや~ シルバーウィーク ・・・

どう、お過ごすでひょうか?

わたくす ・・・

目の周囲がぼこ~り 腫れてて ・・・

ヒッキ~ になってまふ \(゜ロ\)(/ロ゜)/

さてさて ・・・

MT4 EA 完全自動売買をスタートさせ ・・・

トラブル解決と思いきや ・・・

トラブルが修復できておらず ・・・ 同じ用に、21時~0時に ・・・

意図しない通貨ペアをまたまた、取引しており ・・・

マイナス40pips \(゜ロ\)ココハドコ? (/ロ゜)/アタシハダアレ?

・・・

・・・

・・・

しかす ・・・

今度は間違いなくトラブル解決 ・・・ (V)o¥o(V)

メインプログラムでは、現在38pips獲得しているのに ・・・

トラブルのせいで トータル100pips のマイナス ・・・ (-"-)

完全に100pips のビハインドで来週から勝負どす 。。。

本当ならば、純利益38pips なのに ・・・ トホホ TT

wbbqb24y.jpg


次回のFXに関する記事は、このビハインドを埋めたら、お知らせすます。

Again...



FC2blog テーマ:投資日記 - ジャンル:株式・投資・マネー

【2009/09/19 15:44】 | FX
トラックバック(0) |
FX プログラム ・・・

稼働しますた 。。。

すかすながら、サーバータイムをミスってて ・・・

すぐに訂正はしたものの ・・・

多分 ・・・ 発注が入ってたんでしょう 。。。

昨晩 0.3Lots購入で-90pips ・・・ (;一_一)

すぐに訂正したのだが \(゜ロ\)(/ロ゜)/

きちんとしたサーバータイム時間に設定し 0.1Lots 設定にし ・・・

今朝は ・・・ 12pips獲得 。。。

何か ・・・ 痛い(>_<)

出だしでやられた感じがしまふ ・・・ (V)o¥o(V)

MT4 システムトレード 完全自動売買 現在 ・・・

-78pips 痛い勉強代やった TT

とりもどしてやる!!!

v5byw577yb.jpg

と ・・・ 言っても何もしなくて勝手に働いてくれまふ 。。。

長いみちのりやった。これからや 。。。

Again...



FC2blog テーマ:システムトレード - ジャンル:株式・投資・マネー

【2009/09/17 20:49】 | FX
トラックバック(0) |
さっきのプログラムの結果は ・・・

こっちのプログラムですた 。。。

このプログラムに何かしらのインディケーターを

いくつか絡ませたロジックを組むと ・・・

もしかすて ・・・






//+------------------------------------------------------------------+
//| YNNY.mq4 |
//| Copyright (c) 2009/04/09, ∞ |
//| †使用条件 // USD_JPY // Candle M15 |
//+------------------------------------------------------------------+

#property copyright "Copyright (c) 2009, ∞"
#property link "†††††††††††††††††††"

//マジックナンバー * 取引ナンバー OrderModify 関数で使用中*
#define MAGIC 100

//パラメーターの変数設定
extern int FastMA_Period = 30; // 短期移動平均の期間
extern int SlowMA_Period = 60; // 長期移動平均の期間
extern double Lots = 0.1; // 売買ロット数
extern int Slippage = 4; // スリッページ
extern int Profit=42; // リミット値
extern int StopLoss=41; // ストップロス値
extern double Threshold=0.30; // 移動平均乖離率
extern int MAPeriod=30; // 移動平均線の期間
extern int TrailingStop = 14; // トレイリングストップ値

//+------------------------------------------------------------------+
//| ポジションを決済する |
//+------------------------------------------------------------------+

void ClosePositions()
{

for( int i=0; i {
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == false) break;
if(OrderMagicNumber() != MAGIC || OrderSymbol() != Symbol()) continue;
//オーダータイプのチェック
if(OrderType()==OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,White);
break;
}
if(OrderType()==OP_SELL)
{
OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,White);
break;
}
}
}

/* コメントアウト中
int i, ticket, err;
// ボジション保有の判定
ticket = -1;
for (i = 0; i < OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == true) {
if(OrderSymbol() == Symbol()) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
ticket = OrderTicket();
break;
}
}
}
}
*/

//+------------------------------------------------------------------+
//| スタート関数 |
//+------------------------------------------------------------------+

int start()
{
//バーの始値でトレード可能かチェック
if(Volume[0]>1 || IsTradeAllowed()==false) return(0);

//移動平均の計算
double FastMA1 = iMA(NULL,0,FastMA_Period,0,MODE_SMA,PRICE_CLOSE,1);
double SlowMA1 = iMA(NULL,0,SlowMA_Period,0,MODE_SMA,PRICE_CLOSE,1);
double FastMA2 = iMA(NULL,0,FastMA_Period,0,MODE_SMA,PRICE_CLOSE,2);
double SlowMA2 = iMA(NULL,0,SlowMA_Period,0,MODE_SMA,PRICE_CLOSE,2);

// トレイリング機能でオーダー数を検索 コメントアウトで取引は複数となる
if( OrdersTotal() == 0){

// カスタムインディケータを minus と plus に代入 * 現在直接EAに使用なし
double minus = iCustom(Symbol(), NULL, " CustomIndicatorYNakashima", Threshold, MAPeriod, 2, 1);
double plus = iCustom(Symbol(), NULL, " CustomIndicatorYNakashima", Threshold, MAPeriod, 1, 1);

//買い条件 * 一部買い条件を売り条件に変更あり // 反 にて記載 *

// 01 三空叩き込み ******************** Profit_facter + 0.01 ********************
if (Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Close[5] > Open[4] && Close[4] > Open[3] && Close[3] > Open[2]) {

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

/* 未使用
// 02 三手大陰線
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[4] > Open[2]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);
*/

// 03 最後の抱き陰線 ******************** Profit_facter + 0.01 ********************
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[2] <= Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 04 明けの明星
}else if(Open[7] > Close[7] && Open[6] > Close[6] && Open[5] > Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[5] >= Open[4] &&Open[3] >= Close[4]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);
/*
// 05 捨て子底
}else if(Open[6] > Close[6] && Open [5] > Close[5] &&Open[4] > Close[4] && Open[3] == Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Open[3] == Close[3] && Close[4] >= Open[3] && Open[2] >= Close[3]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);
*/
// 06 大陰線のはらせ寄せ
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] == Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[4] <= Close[3] && Close[4] <= Open[3]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 反
// 07 たくり線 ******************** Profit_facter + 0.02 ********************
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[4] > Open[3] && Close[3] > Low[3]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 08 努力線 ******************** Profit_facter + 0.05 ********************
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Close[4] > Close[3] && Open[3] > Low[3]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 反
// 09 陰の陰はらみ
}else if(Open[6] > Close[6] && Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Open[3] >= Close[4]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 10 放れ五手黒一本底
}else if(Open[7] > Close[7] && Open[6] > Close[6] && Open[5] > Close[5] && Open[4] < Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[7] > Open[5]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);
// 反
// 11 やぐら底
}else if(Open[7] > Close[7] && Open[6] < Close[6] && Open[5] > Close[5] && Open[4] < Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[2] > Open[3] && Close[2] > Close[4] && Close[2] > Open[5] && Close[2] > Close[6]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 12 小幅上放れ黒線
}else if(Open[4] > Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Close[1] > Open[2] && Close[1] > Close[3]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 13 放れ七手の変化底改
}else if(Open[6] > Close[6] && Open[5] > Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Open[1] >Open[2] && Close[6] > Open[5]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 反
// 14 連続下げ放れ三つ星改 ******************** Profit_facter + 0.01 ********************
}else if(Open[6] < Close[6] && Open[5] > Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] == Close[2] && Open[1] < Close[1] && Open[2] == Close[2] && Close[6] >= Open[5] && Close[1] > Open[4]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 15 逆襲線
}else if(Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[2] > Close[1] && Close[3] > Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 16 抱き陽線 ******************** Profit_facter + 0.04 ********************
}else if(Open[4] < Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[1] > Open[2] && Open[1] < Open[2]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 17 寄り切り陽線 1
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[1] > Close[3] && Close[1] > Open[2] && Close[1] >Open[4] && Close[1] >Close[5]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 18 寄り切り陽線 2
}else if(Open[5] < Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[1] > Close[3] && Close[1] > Open[2] && Close[1] >Open[4] && Close[1] >Close[5]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 19 赤三兵

}else if(Open[6] > Close[6] && Open[5] > Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Open[1] > Open[3] && Open[1] > Open[4] && Open[1] > Open[5] && Open[1] > Open[6]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 反
// 20 下位の陽線五本 ******************** Profit_facter + 0.09 ********************
}else if(Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 21 押さえ込み線
}else if(Open[7] < Close[7] && Open[6] < Close[6] && Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[3] > Open[6]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 22 上げの差し込み線
}else if(Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Open[1] > Close[4]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 23 上げ三法
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[4] > Open[1] && Open[1] > Open[5] && Close[3] > Open[5]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 24 カブセ上抜け
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[2] > Open[4] && Close[3] > Open[5]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

/*
// コメントアウト中
// 25 上伸途上の連続タスキ
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[4] < Open[3]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);
*/

// 反
// 26 上放れタスキ
}else if(Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Open[3] > Open[4] && Close[2] > Open[4]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 27 上伸び途上のクロス
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] == Close[2] && Open[1] < Close[1] && Close[6] < Open[3]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 28 上げの三つ星 ******************** Profit_facter + 0.03 ********************
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Open[4] <= Close[3] && Close[3] <= Open[2] && Close[6] < Close[4] && Close[6] < Close[2] && Close[6] < Open[3]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 29 並び赤
}else if(Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[3] < Open[2] && Close[3] < Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 反
// 30 上放れ陰線二本連続 ******************** Profit_facter + 0.01 ********************
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[6] > Close[5] && Close[1] > Close[2]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 31 上位の連続太陽線
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[3] < Open[1] && Close[2] > Close[4]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 32 波高い線
}else if(Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[1] < High[2]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 売り条件 * 一部売り条件を買い条件に変更あり // 反 にて記載 **********************************************************************************************************

// 01 三空踏み上げ
}else if(Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[4] < Open[3] && Close[3] < Open[2] && Close[2] < Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

//反
// 02 新値八手利食い線
}else if(Open[7] < Close[7] && Open[6] > Close[6] && Open[5] <= Close[5] && Open[4] <= Close[4] && Open[3] <= Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[2] > Open[3] && Close[6] > Close[8]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 03 三手放れ寄せ線
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] == Close[1] && Close[5] < Open[4]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 04 行き詰まり線
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && High[3] > Close[2]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 反
// 05 三羽ガラス ******************** Profit_facter + 0.02 ********************
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Open[5] < Close[3] && Open[5] < Close[2]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 06 首吊り線
}else if(Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[3] < Open[2] && Close[3] > Low[2]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 07 上位の上放れ陰線
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Close[3] < Close[2]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 08 宵の明星
}else if(Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[3] < Open[2] && Open[2] > Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);
// 反
// 09 陽の陽のはらみ
}else if(Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[3] > Close[2] && Open[3] < Open[2]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 10 最後の抱き陽線
}else if(Open[4] < Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Open[2] < Close[1] && Close[2] > Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 11 抱き陰線
}else if(Open[5] > Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[2] < Open[1] && Open[2] > Close[1]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 12 つたい線の打ち返し
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[1] > Close[4] && Close[2] < Close[3]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 13 放れ五手赤一本
}else if(Open[6] < Close[6] && Open[5] < Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Open[5] > Close[6]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 14 放れ七手大黒 ******************** Profit_facter + 0.01 ********************
}else if(Open[8] < Close[8] && Open[7] < Close[7] && Open[6] > Close[6] && Open[5] < Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[8] < Open[7] && Close[7] > Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 15 差し込み線
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[3] > Open[2]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

/*
// コメントアウト中
// 16 下放れ三手
}else if(Open[6] > Close[6] && Open[5] > Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[5] > Open[4]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);
*/

// 反
// 17 下げ三法 ******************** Profit_facter + 0.01 ********************
}else if(Open[7] > Close[7] && Open[6] > Close[6] && Open[5] > Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[5] > Close[1]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 18 三手打ち
}else if(Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[1] > Open[2] && Close[1] > Open[3] && Close[1] > Open[4] && Open[1] < Close[2] && Open[1] < Close[3] && Open[1] < Close[4]){
ClosePositions();

OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 19 下落途上の連続タスキ
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[2] < Open[4] && Open[2] > Close[3]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 20 化け線
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && High[5] < Open[1] && High[4] < Open[1] && High[3] < Open[1] && High[2] < Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 21 下げ足のクロス
}else if(Open[6] > Close[6] && Open[5] > Close[5] && Open[4] > Close[4] && Open[3] == Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Close[4] > Open[2]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 反
// 22 下放れ黒二本 ******************** Profit_facter + 0.01 ********************
}else if(Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Close[3] > Open[2] && Close[3] > Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 23 下げの三つ星
}else if(Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && High[2] == High[1] && Low[2] == Low[1]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 24 上位の陰線五本
}else if(Open[6] < Close[6] && Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Open[6] > Open[1]){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

/*
// コメントアウト中
// 25 寄り切り陰線
}else if(Open[5] < Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Open[4] > Open[1] && Close[1] < Close[2] && Close[1] < Close[4] && Close[1] < Open[3] && Close[1] < Open[5]){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);
*/

}
}

/*
// トレイリングストップ機能 * コメントアウト中 *

for(int i=0; i < OrdersTotal(); i++){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == false) break;
if(OrderMagicNumber() != MAGIC || OrderSymbol() != Symbol()) continue;
if(OrderType() == OP_BUY){
if(Bid-OrderOpenPrice() >TrailingStop*Point && OrderStopLoss() < Bid-TrailingStop*Point){
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);
return(0);
}
break;
}
if(OrderType() == OP_SELL){
if(OrderOpenPrice()-Ask > TrailingStop*Point && OrderStopLoss() > Ask+TrailingStop*Point){
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Green);
return(0);
}
break;
}
}
*/
/*
//トレイリングストップ機能 * 利益確定で追いかける機能追加
OrderSelect(0, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && OrderSymbol()==Symbol()) {
if(OrderType()==OP_BUY) {
if(TrailingStop>0) {
if(Bid-OrderOpenPrice()>Point*TrailingStop) {
if(OrderStopLoss() OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Magenta);
return(0);
}
}
}
} else {
if(TrailingStop>0) {
if((OrderOpenPrice()-Ask)>(Point*TrailingStop)) {
if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0)) {
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Magenta);
return(0);
}
}
}
}
}
*/

//----
return(0);
}
//+------------------------------------------------------------------+


FC2blog テーマ:投資日記 - ジャンル:株式・投資・マネー

【2009/09/16 21:38】 | FX
トラックバック(0) |
ちなみに、Javaプログラマー科を卒業して ・・・

作っていたプログラムの一部です。

どうにかロウソク足のみの単純明快なロジックを作りたくて・・・

試行錯誤していますた。

トレイリングストップ機能をコメントアウトさせているのは・・・

バックテストで ・・・ 思った様なトレイリングストップが ・・・

かかっていなかったからでふ。多分プログラムミスでしょう (-"-)

色々いじってて、途中だったため、実際はコメントアウトしてないなぁ。

MetaTrader のMQL4プログラム言語です。

EA (エキスパートアドバイザー)と言われる自動取引のプログラムになりまふ。

どんなモノか ・・・ 参考までにご紹介。

このロジックで実用するのは自殺行為でしょう ^_^;

卒業してからは、毎日プログラムを作成しては ・・・

バックテストを行う日々を過ごしていますた 。。。

1ヶ月たとうとしたある日 ・・・

いいかげんに働け!と言われ就職 。。。




//+------------------------------------------------------------------+
//| ∞_S_C.mq4 |
//| Copyright (c) 2009/04/10, ∞ |
//| †使用条件 // USD_JPY // Candle M15 |
//+------------------------------------------------------------------+

#property copyright "Copyright (c) 2009, ∞"
#property link "†††††††††††††††††††"

/* 条件 ***********************************************
スプレッドがせまいこと
最小 USD_JPY / EUR_USD
次点 EUR_JPY / AUD_USD
ボラティリティがあること
大 GBP_JPY / GBP_USD / EUR_JPY
小 USD_JPY / GBP_JPY / AUD_USD
EUR_JPY が条件を両方満たす
ボラ大通貨ペア Profit 10Pips / StopLoss 25Pips
ボラ小通貨ペア Profit 20Pips / StopLoss 40Pips
******************************************************/

//マジックナンバー * 取引ナンバー OrderModify 関数で使用中*
#define MAGIC 777

//パラメーターの変数設定
extern int FastMA_Period = 30; // 短期移動平均の期間
extern int SlowMA_Period = 60; // 長期移動平均の期間
extern double Lots = 0.1; // 売買ロット数
extern int Slippage = 4; // スリッページ
extern int Profit=50; // リミット値
extern int StopLoss=20; // ストップロス値
extern double Threshold=0.30; // 移動平均乖離率
extern int MAPeriod=30; // 移動平均線の期間
extern int TrailingStop = 30; // トレイリングストップ値
extern int Hpips = 6; // ロウソクのpips差の判定 High
extern int Lpips =3; // ロウソクのpips差の判定 Low
extern int Epips =1; // ロウソクのpips差の判定 Etc

//+------------------------------------------------------------------+
//| ポジションを決済する |
//+------------------------------------------------------------------+

void ClosePositions()
{

for( int i=0; i {
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == false) break;
if(OrderMagicNumber() != MAGIC || OrderSymbol() != Symbol()) continue;
//オーダータイプのチェック
if(OrderType()==OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,White);
break;
}
if(OrderType()==OP_SELL)
{
OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,White);
break;
}
}
}

/* コメントアウト中
int i, ticket, err;
// ボジション保有の判定
ticket = -1;
for (i = 0; i < OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == true) {
if(OrderSymbol() == Symbol()) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
ticket = OrderTicket();
break;
}
}
}
}
*/

//+------------------------------------------------------------------+
//| スタート関数 |
//+------------------------------------------------------------------+

int start()
{
//バーの始値でトレード可能かチェック
if(Volume[0]>1 || IsTradeAllowed()==false) return(0);

//移動平均の計算
double FastMA1 = iMA(NULL,0,FastMA_Period,0,MODE_SMA,PRICE_CLOSE,1);
double SlowMA1 = iMA(NULL,0,SlowMA_Period,0,MODE_SMA,PRICE_CLOSE,1);
double FastMA2 = iMA(NULL,0,FastMA_Period,0,MODE_SMA,PRICE_CLOSE,2);
double SlowMA2 = iMA(NULL,0,SlowMA_Period,0,MODE_SMA,PRICE_CLOSE,2);

// トレイリング機能でオーダー数を検索 コメントアウトで取引は複数となる
if( OrdersTotal() == 0){

// カスタムインディケータを minus と plus に代入 * 現在直接EAに使用なし
double minus = iCustom(Symbol(), NULL, " CustomIndicatorYNakashima", Threshold, MAPeriod, 2, 1);
double plus = iCustom(Symbol(), NULL, " CustomIndicatorYNakashima", Threshold, MAPeriod, 1, 1);

////////////////////////////// ロングエントリーメイン条件 //////////////////////////////

// 01 ロングエントリー ********** 陽3前 → 陰2前 → 陽1前 ********** 精度を上げるなら条件に陽4前ローソクの条件を加える **********

// 3本前の陽ローソクの実体は7Pips以上
if (MathAbs(Open[3]) + (Hpips * Point) <= MathAbs(Close[3]) &&
// 2本前の陰ローソクの実体は3Pips以上
MathAbs(Open[2]) + (Lpips * Point) >= MathAbs(Close[2]) &&
// 1本前のローソクは陽ロウソク
MathAbs(Open[1]) + (Epips * Point) <= MathAbs(Close[1]) &&
// 1本前の陽ローソクの終値が2本前の陰ローソクの始値を超える
MathAbs(Close[1]) >= MathAbs(Open[2]) + (Epips * Point)) {
// 3本前の陽ローソク始値を2本前の陰ローソク終値が超えないなら尚良い
// (MathAbs(Open[3] - Close[2]) >= (1 * Point))) {

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 02 ロングエントリー ********** 陽4前 → 陰3前 → 陰2前 → 陽1前 (01 応用)********** 精度を上げるなら条件に陽5前ローソクの条件を加える **********
}else if (Open[4] < Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] &&
// 4本前のローソクの実体に2本前のローソクの高値と安値が包まれる
Open[4] > Low[2] && Close[4] > High[2] &&
// 1本前の陽ローソクの終値が3本前の陰ローソクの始値を超える
Close[1] < Open[3] &&
// 4本前のローソクの実体は7Pips以上 * ボラ大通貨ペアなら10Pips *未実装
(MathAbs(Open[4] - Close[4]) >= (7 * Point)) &&
// 3本前のローソクの実体は3Pips以上 *未実装
(MathAbs(Open[3] - Close[3]) >= (7 * Point))) {
// 4本前の陽ローソク始値を3本前の陰ローソク終値が越えていないなら尚良い
// Open[4] >= Close[3] ならよりベター *未実装

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 03 ロングエントリー ********** 陽5前 → 陰4前 → 陰3前 → 陰2前 → 陽1前 (01 応用)********** 精度を上げるなら条件に陽6前ローソクの条件を加える **********
}else if (Open[5] < Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] &&
// 5本前のローソクの実体に3本前のローソクの高値と安値が包まれる
Open[5] > Low[3] && Close[5] > High[3] &&
// 5本前のローソクの実体に2本前のローソクの高値と安値が包まれる
Open[3] > Low[2] && Close[5] > High[2] &&
// 1本前の陽ローソクの終値が4本前の陰ローソクの始値を超える
Close[1] < Open[4] &&
// 5本前のローソクの実体は7Pips以上 * ボラ大通貨ペアなら10Pips
(MathAbs(Open[5] - Close[5]) >= (7 * Point)) &&
// 4本前のローソクの実体は3Pips以上 *未実装
(MathAbs(Open[4] - Close[4]) >= (3 * Point))) {
// 5本前の陽ローソク始値を4本前の陰ローソク終値が越えていないなら尚良い
// Open[5] >= Close[4] ならよりベター *未実装

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 04 ロングエントリー ********** 陽5前 → 陰4前 → 陰3前 → 陽2前 → 陽1前 (01 応用)********** 精度を上げるなら条件に陽6前ローソクの条件を加える **********
}else if (Open[5] < Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] < Close[1] &&
// 5本前のローソクの実体に3本前のローソクの高値と安値が包まれる
Open[5] > Low[3] && Close[5] > High[3] &&
// 5本前のローソクの実体に2本前のローソクの高値と安値が包まれる
Open[3] > Low[2] && Close[5] > High[2] &&
// 1本前の陽ローソクの終値が4本前の陰ローソクの始値を超える
Close[1] < Open[4] &&
// 5本前のローソクの実体は7Pips以上 * ボラ大通貨ペアなら10Pips
(MathAbs(Open[5] - Close[5]) >= (7 * Point)) &&
// 4本前のローソクの実体は3Pips以上 *未実装
(MathAbs(Open[4] - Close[4]) >= (7 * Point))) {
// 5本前の陽ローソク始値を4本前の陰ローソク終値が越えていないなら尚良い
// Open[5] >= Close[4] ならよりベター *未実装

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 05 ロングエントリー ********** 陽7前 → 陰6前 → 陰5前 → 陰4前 → 陽3前 → 陽2前 → 陽1前 (01 応用)********** 精度を上げるなら条件に陽8前ローソクの条件を加える **********
}else if (Open[7] < Close[7] && Open[6] > Close[6] && Open[5] > Close[5] && Open[4] > Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] &&
// 7本前のローソクの実体に5本前のローソクの高値と安値が包まれる
Open[7] > Low[5] && Close[7] > High[5] &&
// 7本前のローソクの実体に4本前のローソクの高値と安値が包まれる
Open[7] > Low[4] && Close[7] > High[4] &&
// 7本前のローソクの実体に3本前のローソクの高値と安値が包まれる
Open[7] > Low[3] && Close[7] > High[3] &&
// 7本前のローソクの実体に2本前のローソクの高値と安値が包まれる
Open[7] > Low[2] && Close[7] > High[2] &&
// 1本前の陽ローソクの終値が6本前の陰ローソクの始値を超える
Close[1] < Open[6] &&
// 7本前のローソクの実体は7Pips以上 * ボラ大通貨ペアなら10Pips
(MathAbs(Open[7] - Close[7]) >= (7 * Point)) &&
// 6本前のローソクの実体は3Pips以上 *未実装
(MathAbs(Open[6] - Close[6]) >= (3 * Point))) {
// 7本前の陽ローソク始値を6本前の陰ローソク終値が越えていないなら尚良い
// Open[7] >= Close[6] ならよりベター *未実装

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);



// 06 ロングエントリー ********** 3本連続の陽ロウソク 陽 陽 陽 **********
}else if (Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] &&
// 1本前のロウソクの実体が2本前のロウソクの実体以上になる * 1Pips以上
(MathAbs(Open[1] - Close[1]) + (1 * Point) >= MathAbs(Open[2] - Close[2]))){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 07 ロングエントリー ********** 06の途中で1本育たない陽ロウソクがある場合 陽 陽 陽 陽(06 応用)**********
}else if (Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] &&
// 1本前のローソクの実体が3本前のローソクの実体以上になる * 1Pips以上
(MathAbs(Open[1] - Close[1]) + (1 * Point) >= MathAbs(Open[3] - Close[3]))){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 08 ロングエントリー ********** 06の途中で2本育たない陽ロウソクがある場合 陽 陽 陽 陽 陽(06 応用)**********
}else if (Open[5] < Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] &&
// 1本前のローソクの実体が4本前のローソクの実体以上になる * 1Pips以上
(MathAbs(Open[1] - Close[1]) + (1 * Point) >= MathAbs(Open[4] - Close[4]))){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

// 09 ロングエントリー ********** 06の途中で1本育たない陰ロウソクが混じった場合 陽 陽 陰 陽(06 応用)**********
}else if (Open[4] < Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] &&
// 3本前の陽ロウソクの実体が2本前の陰ローソクの実体を包み込む
Open[3] > Low[2] && Close[3] > High[2] &&
// 1本前のローソクの実体が3本前のローソクの実体以上になる * 1 Pips以上
(MathAbs(Open[1] - Close[1]) + (1 * Point) >= MathAbs(Open[3] - Close[3]))){

ClosePositions();
OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,
Bid+StopLoss*Point, Bid-Profit*Point, NULL, MAGIC, 0, Red);
return(0);

////////////////////////////// ショートエントリーメイン条件 //////////////////////////////


// 10 ショートエントリー ********** 陰3前 → 陽2前 → 陰1前 ********** 精度を上げるなら条件に陰4前ローソクの条件を加える **********
}else if (Open[3] > Close[3] && Open[2] < Close[2] && Open[1] > Close[1] &&
// 1本前の陰ローソクの終値が2本前の陽ローソクの始値を下回る
Close[1] < Open[2] &&
// 3本前のローソクの実体は7Pips以上 * ボラ大通貨ペアなら10Pips
(MathAbs(Open[3] - Close[3]) >= (7 * Point)) &&
// 2本前のローソクの実体は3Pips以上
(MathAbs(Open[2] - Close[2]) >= (3 * Point))) {
// 3本前の陰ローソク始値を2本前の陽ローソク終値が超えないなら尚良い
// Open[3] >= Close[2] ならよりベター *未実装

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 11 ショートエントリー ********** 陰4前 → 陽3前 → 陽2前 → 陰1前 (10 応用)********** 精度を上げるなら条件に陰5前ローソクの条件を加える **********
}else if (Open[4] > Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] &&
// 4本前のローソクの実体に2本前のローソクの高値と安値が包まれる
Open[4] > High[2] && Close[4] > Low[2] &&
// 1本前の陰ローソクの終値が3本前の陽ローソクの始値を下回る
Close[1] < Open[3] &&
// 4本前のローソクの実体は7Pips以上 * ボラ大通貨ペアなら10Pips
(MathAbs(Open[4] - Close[4]) >= (7 * Point)) &&
// 3本前のローソクの実体は3Pips以上
(MathAbs(Open[3] - Close[3]) >= (3 * Point))) {
// 4本前の陰ローソク始値を3本前の陽ローソク終値が超えないなら尚良い
// Open[4] >= Close[3] ならよりベター *未実装

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 12 ショートエントリー ********** 陰5前 → 陽4前 → 陽3前 → 陽2前 → 陰1前 (10 応用)********** 精度を上げるなら条件に陰6前ローソクの条件を加える **********
}else if (Open[5] > Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] &&
// 5本前のローソクの実体に3本前のローソクの高値と安値が包まれる
Open[5] > High[3] && Close[5] > Low[3] &&
// 5本前のローソクの実体に2本前のローソクの高値と安値が包まれる
Open[3] > High[2] && Close[5] > Low[2] &&
// 1本前の陰ローソクの終値が4本前の陽ローソクの始値を下回る
Close[1] < Open[4] &&
// 5本前のローソクの実体は7Pips以上 * ボラ大通貨ペアなら10Pips
(MathAbs(Open[5] - Close[5]) >= (7 * Point)) &&
// 4本前のローソクの実体は3Pips以上
(MathAbs(Open[4] - Close[4]) >= (3 * Point))) {
// 5本前の陰ローソク始値を4本前の陽ローソク終値が超えないなら尚良い
// Open[5] >= Close[4] ならよりベター *未実装

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 13 ショートエントリー ********** 陰5前 → 陽4前 → 陽3前 → 陰2前 → 陰1前 (10 応用)********** 精度を上げるなら条件に陰6前ローソクの条件を加える **********
}else if (Open[5] > Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] > Close[2] && Open[1] > Close[1] &&
// 5本前のローソクの実体に3本前のローソクの高値と安値が包まれる
Open[5] > High[3] && Close[5] > Low[3] &&
// 5本前のローソクの実体に2本前のローソクの高値と安値が包まれる
Open[3] > High[2] && Close[5] > Low[2] &&
// 1本前の陰ローソクの終値が4本前の陽ローソクの始値を下回る
Close[1] < Open[4] &&
// 5本前のローソクの実体は7Pips以上 * ボラ大通貨ペアなら10Pips
(MathAbs(Open[5] - Close[5]) >= (7 * Point)) &&
// 4本前のローソクの実体は3Pips以上
(MathAbs(Open[4] - Close[4]) >= (3 * Point))) {
// 5本前の陰ローソク始値を4本前の陽ローソク終値が超えないなら尚良い
// Open[5] >= Close[4] ならよりベター *未実装

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 14 ショートエントリー ********** 陰7前 → 陽6前 → 陽5前 → 陽4前 → 陰3前 → 陰2前 → 陰1前 (10 応用)********** 精度を上げるなら条件に陰8前ローソクの条件を加える **********
}else if (Open[7] > Close[7] && Open[6] < Close[6] && Open[5] < Close[5] && Open[4] < Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] &&
// 7本前のローソクの実体に5本前のローソクの高値と安値が包まれる
Open[7] > High[5] && Close[7] > Low[5] &&
// 7本前のローソクの実体に4本前のローソクの高値と安値が包まれる
Open[7] > High[4] && Close[7] > Low[4] &&
// 7本前のローソクの実体に3本前のローソクの高値と安値が包まれる
Open[7] > High[3] && Close[7] > Low[3] &&
// 7本前のローソクの実体に2本前のローソクの高値と安値が包まれる
Open[7] > High[2] && Close[7] > Low[2] &&
// 1本前の陰ローソクの終値が6本前の陰ローソクの始値を下回る
Close[1] < Open[6] &&
// 7本前のローソクの実体は7Pips以上 * ボラ大通貨ペアなら10Pips
(MathAbs(Open[7] - Close[7]) >= (7 * Point)) &&
// 6本前のローソクの実体は3Pips以上
(MathAbs(Open[6] - Close[6]) >= (3 * Point))) {
// 7本前の陰ローソク始値を6本前の陽ローソク終値が超えないなら尚良い
// Open[7] >= Close[6] ならよりベター *未実装

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 15 ショートエントリー ********** 3本連続の陰ロウソク 陰 陰 陰 **********
}else if (Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] &&
// 1本前のロウソクの実体が2本前のロウソクの実体以上になる * 1Pips以上
(MathAbs(Open[1] - Close[1]) + (1 * Point) >= MathAbs(Open[2] - Close[2]))){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 16 ショートエントリー ********** 15の途中で1本育たない陰ロウソクがある場合 陰 陰 陰 陰(15 応用)**********
}else if (Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] &&
// 1本前のローソクの実体が3本前のローソクの実体以上になる * 1Pips以上
(MathAbs(Open[1] - Close[1]) + (1 * Point) >= MathAbs(Open[3] - Close[3]))){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 17 ショートエントリー ********** 15の途中で2本育たない陰ロウソクがある場合 陰 陰 陰 陰 陰(15 応用)**********
}else if (Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] &&
// 1本前のローソクの実体が4本前のローソクの実体以上になる * 1Pips以上
(MathAbs(Open[1] - Close[1]) + (1 * Point) >= MathAbs(Open[4] - Close[4]))){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

// 18 ショートエントリー ********** 15の途中で1本育たない陽ロウソクが混じった場合 陰 陰 陽 陰(15 応用)**********
}else if (Open[4] > Close[4] && Open[3] > Close[3] && Open[2] < Close[2] && Open[1] > Close[1] &&
// 3本前の陰ロウソクの実体が2本前の陽ローソクの実体を包み込む
Open[3] > High[2] && Close[3] > Low[2] &&
// 1本前のローソクの実体が3本前のローソクの実体以上になる * 1Pips以上
(MathAbs(Open[1] - Close[1]) + (1 * Point) >= MathAbs(Open[3] - Close[3]))){

ClosePositions();
OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,
Ask-StopLoss*Point, Ask+Profit*Point, NULL, MAGIC, 0, Blue);
return(0);

}
}

/*
// トレイリングストップ機能 * コメントアウト中 *

for(int i=0; i < OrdersTotal(); i++){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == false) break;
if(OrderMagicNumber() != MAGIC || OrderSymbol() != Symbol()) continue;
if(OrderType() == OP_BUY){
if(Bid-OrderOpenPrice() >TrailingStop*Point && OrderStopLoss() < Bid-TrailingStop*Point){
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);
return(0);
}
break;
}
if(OrderType() == OP_SELL){
if(OrderOpenPrice()-Ask > TrailingStop*Point && OrderStopLoss() > Ask+TrailingStop*Point){
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Green);
return(0);
}
break;
}
}
*/

//トレイリングストップ機能 * 利益確定で追いかける機能追加 *** メイン *** コメントアウト中
OrderSelect(0, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && OrderSymbol()==Symbol()) {
if(OrderType()==OP_BUY) {
if(TrailingStop>0) {
if(Bid-OrderOpenPrice()>Point*TrailingStop) {
if(OrderStopLoss() OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Magenta);
return(0);
}
}
}
} else {
if(TrailingStop>0) {
if((OrderOpenPrice()-Ask)>(Point*TrailingStop)) {
if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0)) {
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Magenta);
return(0);
}
}
}
}
}

//----
return(0);
}
//+-------------------------------------------------------------------------------------------------------------------------------------------------+

h765541453.gif

不安定です ・・・ (-"-)

2008.9.1~2008.10.1 *バックテスト期間 / 最新データはインポートしてませんので。

Profit factor 0.96


【2009/09/16 21:14】 | FX
トラックバック(0) |
先日、FX再開!と思いきや 。。。

プログラムが取引をしない \(゜ロ\)(/ロ゜)/

ようは、全然ポジションをとりませんですた 。。。

ようやく ・・・

トラブル解決ってことで ・・・

今後はポジションを取ってくれることでしょう ^^;

nb6eohh.jpg

たのんまっせ~~~

EAさん ♪

完全自動売買で楽々快適だ ・・・

わたすも完全自動売買がしたいって方は ・・・

MetaTrader でググってみてくらはい ♪

Again...



【2009/09/16 20:37】 | FX
トラックバック(0) |
裁量トレードで ・・・

4月におきた ・・・ まさかの1$ 100円越えで ・・・

裁量の難しさを痛感したわたくすは ・・・

3ヵ月以上プログラムの様子を見て ・・・

いよいよ ・・・

完全自動売買プログラムを使い ・・・

FXを再開 ・・・ (V)o¥o(V)

ロジックは早朝にロングかショートを保有しますので ・・・

明日の朝 ・・・ 楽しみデス ^^

ben7yqqy5.jpg

とりま ・・・

0.1Lots で様子見デス 。。。

Again...



FC2blog テーマ:MT4自動売買 - ジャンル:株式・投資・マネー

【2009/09/09 21:18】 | FX
トラックバック(0) |
車を買うことも ・・・ 決まったし ・・・

ぼち~ら ・・・

FXを再開しようと思ってまふ 。。。

3ヵ月ほど ・・・試していたプログラムも ・・・

利益幅は大きくないも ・・・

予想以上に安定感があったと感じていまふので 。。。

myuimrri.jpg

FX カテゴリ増設しますた 。。。

1ヵ月に1回くらい? できれば毎週 ・・・ 獲得pips でもお知らせできたらな 。。。 と 。。。

Again...



FC2blog テーマ:つぶやき - ジャンル:株式・投資・マネー

【2009/09/03 23:03】 | FX
トラックバック(0) |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。