작업 종료됨
명시
The idea behind this EA is to hedge, take profit on the trades that are making profit and manage the trades that in loss with the aim that overall, the account will end in net profit.
The description is as follows
Opening Buy and Sell at the same time. I want the EA to trade either of the following trade events and other user inputs:
string note = "========= EA Trade Events and Other User Inputs =========";
input string Start_time = "01:00", Stop_time = "00:15";//EA will only trade at this time
bool TradeAuto = True;// if true, EA will trade as soon as it is launched on the chart
Input double TakeProfit = xx;
Input double StopLoss = xx;
STEP 1: TRADE ENTRIES
As soon as this EA’s trade event is triggered, eight entries are automatically generated (Two entries in Step 1a, Three entries in Step 1b and Three entries in Step 1c)
Step 1a: Open 1 buy and 1 Sell @ market. Lot size = User input. Take Profit = User Input; StopLoss = 0;
Step 1b: At the same time open Buy Stop, Buy Stop, Sell Limit. Treat as follows:
Step 1b(1) Buy Stop: Lot = same as in 1a, Take Profit = User Input, Stop Loss = 0;
Step 1b(2) Buy Stop: Lot = same as in 1a, Take Profit = 0, StopLoss=User input;
Step 1b(3) Sell Limit; Lot = same as in 1a, Take Profit = User Input, Stop Loss = 0;
Note that the price to use for pending orders is market price + TakeProfit Pips
Step 1c: At the same time, open 1 Buy Limit, Sell Stop, Sell Stop. Treat as follows:
Step 1c(1) Sell Stop: Lot = same as in 1a, Take Profit = User Input, Stop Loss = 0;
Step 1c(2) Sell Stop: Lot = same as in 1a, Take Profit = 0,Stop Loss = User Input;
Step 1c(3) Buy Limit: Lot = same as in 1a, Take Profit User Input, Stop Loss = 0;
STEP 2: TRADE MANAGEMENT AND EXITS WHERE BUY TRADE HITS PROFIT FIRST
Step 2a. If the trade moves up 100 pips (depending on the user input for TakeProfit), the buy trade will close in profit of 100 pips (depending on the user input for TakeProfit). At that same point, a sell trade will still be open at this stage. The floating loss on this trade will be 100 (depending on the user input for StopLoss. Also, at the point, the pending orders (2 Nos Buy Stops and 1 No Sell Limit) created in 1b above will trigger and four open trades will float.
The four open trades will be as follows:
1. Sell trade that will be now 100 pip loss. At this point, adjust Take profit to zero
2. New buy trade triggered from the previous Buy Limit
3. New buy trade triggered from the previous Buy Limit
4. New Sell trade triggered from the previous Sell Stop
Step 2b. The pending trades opened in step 1c above, should now be deleted and another three pending trades to replace them at a distance equal to the StopLoss/Takeprofit. The trades are as follows:
Step 2b(1) Sell Stop: Lot = same as in 1a, Take Profit = User Input, Stop Loss = 0;
Step 2b(2) Sell Stop: Lot = same as in 1a, Take Profit = 0,Stop Loss = User Input;
Step 2b(3) Buy Limit: Lot = same as in 1a, Take Profit User Input, Stop Loss = 0;
STEP 2: TRADE MANAGEMENT AND EXITS WHERE SELL TRADE HITS PROFIT FIRST
Step 2a. If the trade moves down 100 pips (depending on the user input for TakeProfit), the sell trade will close in profit of 100 pips (depending on the user input for TakeProfit). At that same point, a buy trade will still be open at this stage. The floating loss on this trade will be 100 (depending on the user input for StopLoss. Also, at the point, the pending orders (2 Nos Sell Stops and 1 No Buy Limit) created in 1b above will trigger and four open trades will float.
The four open trades will be as follows:
1. Buy trade that will be now 100 pip loss. At this point, adjust Take profit to zero
2. New Sell trade triggered from the previous Sell Limit
3. New Sell trade triggered from the previous Sell Limit
4. New Buy trade triggered from the previous Buy Stop
Step 2b. The pending trades opened in step 1c above, should now be deleted and another three pending trades to replace them at a distance equivalent to the StopLoss/Takeprofit. The trades are as follows:
Step 2b(1) Buy Stop: Lot = same as in 1a, Take Profit = User Input, Stop Loss = 0;
Step 2b(2) Buy Stop: Lot = same as in 1a, Take Profit = 0,Stop Loss = User Input;
Step 2b(3) Sell Limit: Lot = same as in 1a, Take Profit User Input, Stop Loss = 0;
Either of the two scenarios will continue forever. Each time a Take Profit level is reached, profit is taken at that level and existing pending orders will be deleted and new ones placed.
Note, it is the entry (Buy or sell) that has Take Profit that will have profit adjusted to zero. This is to ensure that when the trade starts reversing, such trades will be taken out at zero
DEMONSTRATION
In the following example EURUSD is used to demonstrate how the EA should work
Assumptions are as follows:
TakeProfit = 100;
StopLoss = 100;
TradeAuto = True;
Current Price of EURUSD = 1.14194
Since our trade event is chosen as Auto, the EA will launch trades as soon as it is attached to the EURUSD chart.
1a. The following entries are generated
1a(1) Buy EURUSD @ 1.14194 Stop Loss = 0, Take Profit =1.15194
1a(2) Sell EURUSD @ 1.14194 Stop Loss = 0, Take Profit = 1.13194
1bPending orders as follows BBS above market price
1b(1). BuyStop EURUSD @ 1.15194, Stop Loss = 0, Take Profit = 1.16194
1b(2). BuyStop EURUSD @ 1.15194, Stop Loss = 1.14194, Take Profit = 0
1b(3). SellLimit EURUSD @ 1.15194 Stop Loss = 0, Take Profit = 1.14194
1c. Pending orders as follows SSB below market price
1c(1). SellStop EURUSD @ 1.13194, Stop Loss = 0, Take Profit = 1.12194
1c(2). SellStop EURUSD @ 1.13194, Stop Loss = 1.14194, Take Profit = 0;
1c(3). BuyLimit EURUSD @ 1.13194,Stop Loss = 0, Take Profit = 1.14194
When price moves upward and reaches EURUSD = 1.15194, the following will happen,
1. Buy EURUSD @ 1.14194 will hit take profit at 1.15194 and be closed at 100 pips profit
2. Sell EURUSD @ 1.14194 will have open loss of 100 pips and TP will move to 1.14194
3. Pending BuyStop orders (2 Nos) will trigger at market at the price 1.15194
4. Pending SellLimit order (1 No) will trigger at market at the price 1.15194
5. The 3 Nos pending orders SellStop EURUSD @ 1.13194, SellStop EURUSD @ 1.13194, BuyLimit EURUSD @ 1.13194 will be deleted.
6. New Pending orders (6 Nos) will be opened to replace them as follows:
a. SellStop EURUSD @ 1.14194, SellStop EURUSD @ 1.14194, BuyLimit EURUSD @ 1.14194
b. BuyStop EURUSD @ 1.16194, BuyStop EURUSD @ 1.16194, SellLimit EURUSD @ 1.16194
7. This process will continue to repeat each time price reaches a new Take Profit level.
The above process will be reversed if price starts to go down.
Once the trade cycles repeats to the level where the accumulated profit per trade is up to twice the take profit level, all open trades should be closed and the cycle started all over again.
In the above case, once the open and closed profit is up to 200 pips, all trades related to the trade cycle should be closed and a new cycle started.