【FX】レイヤートレードEAの基本のところ

レイヤートレードの設定画面はこのような感じです。

TradeIntervalは5秒、TradeCountは10、SLは50、TPは60、ロットサイズは0.01でやるということです。
金の場合、SLは5ドル、TPは6ドルと設定しています。(SLはある程度のバッファーをイメージしています

シグナルは大文字小文字に関わらず、buy, sell, close, secure で反応するように設定しています。

プログラム

//+——————————————————————+
//| Expert initialization function |
//+——————————————————————+
input int TradeInterval = 5; // 秒数(間隔)
input int TradeCount = 10; // トレード回数
input double SL = 50.0; // ストップロス(ピップス)
input double TP = 60.0; // テイクプロフィット(ピップス)
input double LotSize = 0.01; // ロットサイズ
input string SignalFileName = “signal.txt”; // シグナルファイル名
input int MAGIC_NUMBER = 123456; // MAGIC_NUMBERをパラメータとして設定

int startTime;
bool isTrading = false;
int currentTrade = 0;

//+——————————————————————+
//| Expert initialization function |
//+——————————————————————+
int OnInit()
{
startTime = TimeCurrent();
Print(“EA Initialized.”);
return(INIT_SUCCEEDED);
}

//+——————————————————————+
//| Expert tick function |
//+——————————————————————+
void OnTick()
{
// ファイルからシグナルを読み込み
string signal = ReadSignalFromFile();

Print(“Signal read: “, signal);

// “CLOSE ALL”, “ALLCLOSE”, “close all”, “allclose” で全てのトレードをクローズ
if(signal == “CLOSE ALL” || signal == “ALLCLOSE” || signal == “close all” || signal == “allclose”)
{
CloseAllTrades();
ClearSignalFile(); // シグナルファイルをクリア
Print(“All trades closed and signal file cleared.”);
return;
}

// トレードが実行中でない場合、シグナルに基づいてトレードを開始
if(!isTrading && (signal == “BUY” || signal == “SELL” || signal == “buy” || signal == “sell”))
{
isTrading = true;
currentTrade = 0;
startTime = TimeCurrent();
Print(“Trading started: “, signal);
}

// トレードを開始している場合、指定した秒数間隔でトレードを実行
if(isTrading && currentTrade < TradeCount)
{
if(TimeCurrent() – startTime >= TradeInterval)
{
if(signal == “BUY” || signal == “buy”)
{
OpenBuy();
}
else if(signal == “SELL” || signal == “sell”)
{
OpenSell();
}
currentTrade++;
startTime = TimeCurrent(); // 次のトレードのために時間をリセット
}
}

// 指定回数のトレードが完了した場合、トレードフラグをリセットしファイルをクリア
if(currentTrade >= TradeCount)
{
isTrading = false;
ClearSignalFile(); // ファイルをクリア
Print(“Trading completed. Signal file cleared.”);
}
}

//+——————————————————————+
//| シグナルファイルからシグナルを読み込む |
//+——————————————————————+
string ReadSignalFromFile()
{
int fileHandle = FileOpen(SignalFileName, FILE_READ|FILE_TXT);
string signal = “”;
if(fileHandle > 0)
{
signal = FileReadString(fileHandle);
FileClose(fileHandle);

// 余分なスペースや改行を削除
signal = StringTrimLeft(signal);
signal = StringTrimRight(signal);
}
else
{
Print(“Failed to open signal file.”);
}
return signal;
}

//+——————————————————————+
//| Buyポジションを開く |
//+——————————————————————+
void OpenBuy()
{
double sl = Bid – SL * MarketInfo(Symbol(), MODE_POINT) * 10;
double tp = Bid + TP * MarketInfo(Symbol(), MODE_POINT) * 10;
int ticket = OrderSend(Symbol(), OP_BUY, LotSize, Ask, 3, sl, tp, “Layer Buy”, MAGIC_NUMBER, 0, Green);

if(ticket < 0)
{
Print(“Buy OrderSend failed with error #”, GetLastError());
}
else
{
Print(“Buy Order sent: Ticket#”, ticket);
}
}

//+——————————————————————+
//| Sellポジションを開く |
//+——————————————————————+
void OpenSell()
{
double sl = Bid + SL * MarketInfo(Symbol(), MODE_POINT) * 10;
double tp = Bid – TP * MarketInfo(Symbol(), MODE_POINT) * 10;
int ticket = OrderSend(Symbol(), OP_SELL, LotSize, Bid, 3, sl, tp, “Layer Sell”, MAGIC_NUMBER, 0, Red);

if(ticket < 0)
{
Print(“Sell OrderSend failed with error #”, GetLastError());
}
else
{
Print(“Sell Order sent: Ticket#”, ticket);
}
}

//+——————————————————————+
//| シグナルファイルをクリアする |
//+——————————————————————+
void ClearSignalFile()
{
int fileHandle = FileOpen(SignalFileName, FILE_WRITE|FILE_TXT);
if(fileHandle > 0)
{
FileWrite(fileHandle, “”); // ファイルをクリア
FileClose(fileHandle);
}
else
{
Print(“Failed to open signal file for clearing.”);
}
}

//+——————————————————————+
//| 全てのポジションをクローズする |
//+——————————————————————+
void CloseAllTrades()
{
for(int i = OrdersTotal() – 1; i >= 0; i–)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
int orderType = OrderType();
double closePrice;
if(orderType == OP_BUY)
{
closePrice = Bid;
}
else if(orderType == OP_SELL)
{
closePrice = Ask;
}
else
{
continue; // 他の注文タイプはスキップ
}

bool result = OrderClose(OrderTicket(), OrderLots(), closePrice, 3, clrNONE);
if(result)
{
Print(“Order closed: Ticket#”, OrderTicket());
}
else
{
Print(“Failed to close order: Ticket#”, OrderTicket(), ” Error #”, GetLastError());
}
}
}
}
//+——————————————————————+

【Bitrue×そだし】無料で50USDTのオオバンブルマイ

Bitrueとそだしの限定コラボイベントが開催中です!
2024年12月19日(木)~12月29日(日)(日本時間)の期間中、簡単なステップをこなすだけで、最大300USDTのボーナスがもらえます。
公式コラボレーションで安心・安全。この機会にご参加ください!

イベント内容と参加方法

🥇 ステップ1:新規登録+KYC2認証で50USDTプレゼント!

Bitrueで新規登録し、日本のKYC2認証を完了するだけで、50USDTがもらえます!
👉 今すぐ登録!
Bitrue公式サイト

🥈 ステップ2:500USDTの累計入金で追加50USDTを獲得!

累計で500USDT以上の入金を達成するだけで、さらに50USDTをゲットできます。
初めての入金でも大丈夫!お得にスタートできます。

🥉 ステップ3:取引で最大200USDTをゲット!

取引額に応じて、以下のボーナスを獲得👇

  • 取引額50,000USDT以上50USDTボーナス
  • 取引額500,000USDT以上200USDTボーナス

トレード好きな方には特におすすめです!

👉 イベントの詳細はこちら:イベントページを見る

リンクは本物です

今回のイベントは、Bitrueとそだしの公式コラボレーションです。
リンク先を確認していただければ、リアルなコラボであることがわかるはずです!

※リンクはBitrue公式サイトに直接繋がります。フィッシングサイトではないので、安心してご利用ください。
👉 Bitrue公式登録ページ

なぜそだしがBitrueとコラボできたのか?

そだしは2016年頃から活動している仮想通貨マイナーで、数々の経験を持っています。一時期は暗号資産メディアにも取り上げられ、そのつながりから、今回の世界有数の取引量を誇るBitrueとのコラボが実現しました。

今後も皆さまにイベント情報等を提供してまいります。引き続き当サイトのチェックをお願いします!

本当にUSDTがもらえるの?

本当にUSDTを受け取れます!もらったボーナスは送金や換金が可能です✨
私そだし自身が実際に試して確認済みなので、安心して参加してください。

※一般的なFXボーナスの「証拠金の水増し」とは異なり、リアルなボーナスとしてご利用いただけます!

投資は自己責任にて

まずは50USDTのデポジット、余裕があれば300USDTのボーナスを得て、新しい一歩を踏み出しましょう! 🎁

ただし、投資にはリスクが伴います。最終的な判断はご自身で慎重に行ってください。
楽しみながら、賢く投資を進めていきましょう!

👉 イベントの詳細はこちら

FX

【MARKET HAWKEYE】市場激震!ドル円151円台キープ、金価格上昇、ビットコインは10万ドルの壁を突破!
2024年12月11日、金融市場は熱狂に包まれています。ドル円が151円台を堅持する一方で、金価格は上昇、そしてビットコインはついに10万ドルの大台を突破しました。各市場の詳細な動きを分析します。 米ドル/円(USD/JPY):安定の151円台 ドル円はこの日、151.92円で取引を終えました。堅調な推移が続いており、151円台での安定感を示しています。これは、米国の経済指標が好調だったことや、リスクオンの流れが後押ししたと考えられます。 短期的には日本銀行の金融政策に関連する材料がカギを握りそうです。 金(ゴールド):リスク回避の資産が再び注目を集める 金価格は上昇傾向を強めています。世界的な地政学的リスクや金融政策への不透明感が、投資家をリスク回避の動きへと駆り立てたとみられます。 この上昇が続けば、さらなる高値更新が視野に入ります。 ビットコイン/米ドル(BTC/USD):史上最高値再トライ ビットコインはついに10万ドルの大台を突破しました。この記録的な上昇は、デジタル資産市場への信

続きを読む

【お知らせ】レイヤートレードの自動化を現実的な視点で考え、形態を変えます。
保護中: GOLDのレイヤートレードの本気解説
【FX】嘘偽りなしのレイヤートレードのリアル テレグラムとの連携で高確度トレード【実況動画】
【FX】気づいた点…シグナルや自動トレードより、半自動レイヤートレードの方がよいかもしれない。

「FX」記事をもっと見る