売りトラップEA

//+------------------------------------------------------------------+
//| TrapSELL.mq4 |
//| Copyright 2015, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
//Ver1.1 ストップロスの設定修正。2015/04/27
//Ver1.2 売り上がりを1番上のポジションでは無くひとつ上の設定にしていたのを修正。2015/05/13
//Ver1.3 スプレッドが広い時は注文しない、値跳び時複数注文しない様修正。2015/09/17
//Ver1.4 ストップ固定機能追加。2015/10/01

extern int MAGIC_TRAP =222; //マジックナンバーの代入
extern double Sikake =0.05; //仕掛け幅を入力
extern double Rikaku =0.30; //利確幅を入力
extern double SLKotei = 0; //Ver1.4 固定ストップ値、例:100.10、0にしたらストップ無し、SLRateと同時に有効の場合はSLKotei優先
extern double SLRate = 0; //ストップ値、例:2(2円の場合)、0にしたらストップ無し
extern double Lots =0.03; //ロット数を入力
extern double Uriagari = 0; //再開時の一番上のポジション、初回は0
extern double Urisagari = 0; //再開時の一番下のポジション、初回は0
extern double UriTop = 999; //売り上がりの上限レート例:121.53、上限無しは999
extern double Uribottom = 0; //売り下がりの下限レート例:120.53、下限無しは0
extern int Slippage =30; //スリッページを入力(下2桁口座の場合3にして下さい)
extern double Spsa = 0.05; //スプレッドがこれ以上の時は注文しない。Ver1.3
int Errcnt = 0;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//未入力なら現在値、継続なら売り上がり開始値、売り下がり開始値で開始する。
if((Uriagari > 0) && (Urisagari > 0)) //再開か
{
if(UriTop <= Bid) //上限以下か
{
Uriagari = UriTop; //上限以上なら売り上がり開始位置を上限に
}
if(Uribottom >= Bid) //下限以下か
{
Urisagari = Uribottom; //下限以下なら売り下がり開始位置を下限に
}
}
else //初回なら
{
Uriagari = Bid; //売り上がりは現在値から
Urisagari = Bid; //売り下がりは現在地から
//起動時に一回注文させる為に
if(UriTop >= Bid && Uribottom <= Bid) //上限下限の間なら
{
Urisagari = Bid + Sikake + 0.01; //売り下がりが一回起動する売り下がり値に
}
}
Comment("Uriagari = ",Uriagari,"\n","Urisagari = ",Urisagari);
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
double SLWork;
//Ver1.3削除 double Netobi;
//Ver1.3削除 int i;
//スプレッドがこれ以上の時は注文しない。Ver1.3修正
if(Ask - Bid > Spsa)
{
return(0);
}
//約定したら売り上がり値変更
if(Ask <= Uriagari - Rikaku) //売り上がり値より利確分、買値が下がったか
{
//下限内の仕掛けか
if(Uribottom <= Ask + Rikaku) //仕掛け直し位置は買値下限より上か
{
//Ver1.2 売り上がりを1番上のポジションでは無くひとつ上の設定にしていたのを修正。2015/05/13
// Uriagari = Ask + Rikaku + (Ask - Bid); //仕掛け直し位置を買値より利幅分上に
Uriagari = Uriagari - Sikake; //仕掛け直し位置をひとつ下げる
Comment("Uriagari = ",Uriagari," ","Urisagari = ",Urisagari);
}
}
//上限以上になったら抜ける。
if(UriTop <= Ask)
{
return(0);
}
//下限以下になったら抜ける。
if(Uribottom >= Bid)
{
return(0);
}
//ストップロスの設定
if(SLKotei > 0) //Ver1.4 固定ストップ機能追加
{ //Ver1.4 固定ストップ有り
SLWork = SLKotei; //Ver1.4 固定ストップ機能追加
}
else
{ //Ver1.4 固定ストップ無し
if(SLRate > 0) //ストップロス有り
{
SLWork = Ask + SLRate; //ストップロスの設定
//Ver1.1 ストップロスの設定修正。2015/04/27
// if(Uriagari <= Ask + SLRate) //ストップロスに掛かったか
if(Urisagari <= Ask - SLRate) //ストップロスに掛かったか
{
Urisagari = Ask - SLRate; //売り下がり値も上げる
Comment("Uriagari = ",Uriagari," ","Urisagari = ",Urisagari);
}
}
else //ストップロス無し
{
SLWork = 0;
}
}
//最安値更新したら売り下がり
if(Bid <= Urisagari - Sikake) //売り下がりの次の仕掛けに達したか
{
//Ver1.3削除 Netobi = (Urisagari - Bid) / Sikake;//複数回分値が跳んだか
//Ver1.3削除 for(i = 1;i <= Netobi;i++) //跳んだ回数実行
//Ver1.3削除 {
if(OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,SLWork,Bid - Rikaku,"",MAGIC_TRAP,0,Red) > 0)
{
Urisagari = Bid; //売り下がりを現在値に
//Ver1.3削除 Errcnt = 0;
Comment("Uriagari = ",Uriagari," ","Urisagari = ",Urisagari);
}
//Ver1.3削除 else
//Ver1.3削除 {
//Ver1.3削除 Errcnt = Errcnt + 1;
//Ver1.3削除 if(Errcnt > 10) //数回エラーが続いたらぬける。
//Ver1.3削除 {
//Ver1.3削除 Urisagari = Bid; //売り下がりを現在値に
//Ver1.3削除Comment("Uriagari = ",Uriagari," ","Urisagari = ",Urisagari);
//Ver1.3削除 return(0);
//Ver1.3削除 }
//Ver1.3削除 }
//Ver1.3削除 }
}

//一番上のポジションより仕掛け幅分、上昇したら売り上がり
if(Bid >= Uriagari + Sikake) //売り上がりの次の仕掛けに達したか
{
//Ver1.3削除 Netobi = (Bid - Uriagari) / Sikake; //複数回数分値が跳んだか
//Ver1.3削除 for(i = 1;i <= Netobi;i++) //跳んだ回数実行
//Ver1.3削除 {
if(OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,SLWork,Bid - Rikaku,"",MAGIC_TRAP,0,Red) > 0)
{
Uriagari = Bid; //売り上がりを現在値に
//Ver1.3削除 Errcnt = 0;
Comment("Uriagari = ",Uriagari," ","Urisagari = ",Urisagari);
}
//Ver1.3削除 else
//Ver1.3削除 {
//Ver1.3削除 Errcnt = Errcnt + 1;
//Ver1.3削除 if(Errcnt > 10) //数回エラーが続いたらぬける。
//Ver1.3削除 {
//Ver1.3削除 Uriagari = Bid; //売り上がりを現在値に
//Ver1.3削除Comment("Uriagari = ",Uriagari," ","Urisagari = ",Urisagari);
//Ver1.3削除 return(0);
//Ver1.3削除 }
//Ver1.3削除 }
//Ver1.3削除 }
}

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

comment

Secret

当ブログタイアップ口座
FXブロードネット
絶賛発売中!
最近の記事
私の運用環境です。
MT4で自動売買
1000通貨口座、両建て可
ドル円0.3銭原則固定、例外有 らくらくFX

私のXM利用法と所感。

サーバー
設定簡単2年契約月1781円~ お名前.com【デスクトップクラウド】

手動取引
激狭スプレッド、1通貨単位!
ドル円用


1000通貨取引最高水準!
その他の通貨用
プログラムが苦手な方向け。
ドル円0.2、値幅定値


ドル円0.3銭(例外あり)
FXブロードネット
最近のトラックバック
リンク
メール(質問はコメント欄へ)

名前:
メール:
件名:
本文:

プロフィール

魚屋

Author:魚屋
FX歴11年目に突入しました。職業は魚屋です。
FXで心掛けていることは「儲けすぎるな」です。

最近のコメント
お得に口座開設、お買い物
ポイントサイトについて
(2015/10/01 0:00情報)
期間限定も多いので要確認。
逃しても再掲載も多いです。

日々の生活にhappyをプラスする|ハピタス
みんなdeポイントでポイントの上下があります。

M2J 17000円
DMMFX 15000円
インヴァスト証券 14000円

楽天、ニッセン、ハピタス堂書店なども私は利用しています。


期間限定!タイムセールでポイントの上下があります。

SBI FXトレード 15750円
外為ジャパンFX 14000円
みんなのFX 12600円

簡単に条件をまとめました。
カテゴリ
FXに便利な銀行口座
住信SBIネット銀行
ランクによりATMや振込手数料の無料回数変動
バナー取得はこちらから。
アクセストレード
アクセストレード
アフィリエイトB
アフィリエイト
ランキングに参加しています。
よろしければランキングクリックお願いします^^
にほんブログ村 為替ブログ FX トラップトレード派へ
banner2.gif
月別アーカイブ
ブログ内検索
ブロとも申請フォーム

この人とブロともになる

RSSフィード
フリーエリア