Piplite v1.0 - page 5

 

I tested the GBPUSD set on USDJPY and it works quite well. Is there a set designed specifically for USDJPY?

 

Current Info

All,

All the current set files and newest version are all on the first page! Go here and get the set files!

Happy Trading

v/r

 

Demo working well

I am testing here for two weeks demo started this $2000.00 friday

closed $2,416.00

using piplight 1.3 and the same set files that where on post one

attached my statement

Files:
11-16.pdf  929 kb
 

What did you use for usdjpy

What set file or just default did you use for usdjpy

bendex:
I tested the GBPUSD set on USDJPY and it works quite well. Is there a set designed specifically for USDJPY?
 

Guys,

who is using PipLite with a live account ?

I would try it...

Is it possible with this script, don't get the same results of a demo account ?

 

Great Job...

Iron,

just let me express my sincere appreciation of the work you've done.

I think with this MM you've implemented even coin-flip system will be profitable. Great Job!

Let me point out to one moment though. This is a piece of code I'm concerned about:

if(ProfitTrailing)

{

ProfitMode=0;

if(TotalProfit >=ProfitTarget && TotalProfit <= (MaxProfit-(MaxProfit*MaxRetrace)/100))

ExitAllTrades(Lime,"Max profit reached");

}

[/PHP]

I think we should improve this function a little. Real trailing as you know locks profit at some profitable level and moves up as profit does as well. This function unfortunately doesn't lock the profit. So, if second condition is not true

[TotalProfit <= (MaxProfit-(MaxProfit*MaxRetrace)/100)] and prices retraces down original ProfitTarget is not locked and just nothing happenes. Please correct me if I'm wrong.

Below is proposed re-written profit trailing piece of code (not tested):

[PHP]

// somewhere on the top

bool ProfitTargetReached = false;

//.......

if(ProfitTrailing)

{

ProfitMode=0;

if(TotalProfit >=ProfitTarget) {

ProfitTargetReached = true;

if (TotalProfit >= (ProfitTarget+(ProfitTarget*MaxRetrace)/100)) {

ExitAllTrades(Lime,"Max profit reached on the way UP");

ProfitTargetReached = false;

}

}

else if (ProfitTargetReached && TotalProfit > 0) {

ExitAllTrades(Lime,"Max profit reached on the way DOWN");

ProfitTargetReached = false;

}

}

This should lock the original ProfitTarget.

UPDATE: code above has been fixed

 

Fixes

All,

Let me say, Thanks to Orest! It's little things like this that can make a big difference! If everyone was running Piplite with the set files, everyone was using this piece of logic that wasn't perfect AND still making money. Your code below does lock the profit right. I am testing v1.5 right now and will get back on the results. Thanks again!

Happy Trading

v/r

Orest:
Iron,

just let me express my sincere appreciation of the work you've done.

I think with this MM you've implemented even coin-flip system will be profitable. Great Job!

Let me point out to one moment though. This is a piece of code I'm concerned about:

if(ProfitTrailing)

{

ProfitMode=0;

if(TotalProfit >=ProfitTarget && TotalProfit <= (MaxProfit-(MaxProfit*MaxRetrace)/100))

ExitAllTrades(Lime,"Max profit reached");

}

[/php]

I think we should improve this function a little. Real trailing as you know locks profit at some profitable level and moves up as profit does as well. This function unfortunately doesn't lock the profit. So, if second condition is not true

[TotalProfit <= (MaxProfit-(MaxProfit*MaxRetrace)/100)] and prices retraces down original ProfitTarget is not locked and just nothing happenes. Please correct me if I'm wrong.

Below is proposed re-written profit trailing piece of code (not tested):

[php]

// somewhere on the top

bool ProfitTargetReached = false;

//.......

if(ProfitTrailing)

{

ProfitMode=0;

if(TotalProfit >=ProfitTarget) {

ProfitTargetReached = true;

if (TotalProfit >= (ProfitTarget+(ProfitTarget*MaxRetrace)/100)) {

ExitAllTrades(Lime,"Max profit reached on the way UP");

ProfitTargetReached = false;

}

}

else if (ProfitTargetReached && TotalProfit > 0) {

ExitAllTrades(Lime,"Max profit reached on the way DOWN");

ProfitTargetReached = false;

}

}

This should lock the original ProfitTarget.

UPDATE: code above has been fixed
 

Testing of new code

Orest and others,

There is a piece of the code that you didn't look at. It's this:

if(TotalProfit > MaxProfit) MaxProfit = TotalProfit;

As you can see, after each tick data arrives, MaxProfit is continually changing higher and higher if your profit goes up. Going back to the original code:

if(TotalProfit>=ProfitTarget&&TotalProfit<= (MaxProfit-(MaxProfit*MaxRetrace)/100))

ExitAllTrades(Lime,"Max profit reached");

}

MaxProfit never decreases but only increases over time as Total Profit goes up. If the profit keeps going up, so does the MaxProfit. As long as it goes up, this statement will not be true. IF TotalProfit starts to decrease, it'll still be greater than the Profit Target but the second part of the statement starts to become true. Profit is always locked using this feature! How much of a decrease you want is set with the Max retrace feature. In your sense and definition of the word "locked", I agree that it's not money in the bank until this statement becomes true.

Your code:

if(TotalProfit>=ProfitTarget) {

ProfitTargetReached=true;

if (TotalProfit>= (ProfitTarget+(ProfitTarget*MaxRetrace)/100)) {

ExitAllTrades(Lime,"Max profit reached on the way UP");

ProfitTargetReached=false;

}

}

else if (ProfitTargetReached&&TotalProfit>0) {

ExitAllTrades(Lime,"Max profit reached on the way DOWN");

ProfitTargetReached=false;

}

}

This code actually "fixes" an equity take profit set by the max retrace with no chance of ever growing higher. It sacrifices a locked profit in terms of money in the bank for the potential of growing higher.

I appreciate the feedback. Go through the logic sequence and you'll see the simplicity in growing Profit unabated with this feature and taking it (max retrace percentage less). This is a true trailing equity with unlimited growth potential!

By the way, testing using your code revealed a slightler lower profit factor (1.56 vs 1.67) and a higher drawdown (46% vs 43%). Thanks for looking tightly at the code, I really appreciate the input. A new version is coming out shortly cleaning up a very minor EP feature.

Happy Trading

v/r

 

Dd

Iron,

I'm trying to backtest the EA using different setings since Jan 2000.

It usually behaves quite well except cases when it gets caught up in strong opposite trend and keeps opening normal averaged-in trades. That was pretty scary. I was trying to limit number of trades to reduce the exposure, but in this case I ocassionaly get in dead lock when buy lots equal sell lots and limits of buys and sells are over.

Are you aware of this situation or as new user I am missing something?

I use your set file for GBP/USD.

Orest

lron:
All,

Let me say, Thanks to Orest! It's little things like this that can make a big difference! If everyone was running Piplite with the set files, everyone was using this piece of logic that wasn't perfect AND still making money. Your code below does lock the profit right. I am testing v1.5 right now and will get back on the results. Thanks again!

Happy Trading

v/r
 

Backtesting

All,

I find it fruitless to backtest an EA longer than a year. The market changes drastically from month to month and backtesting just helps in setting initial data points.

I don't believe you will find an EA that will behave well over the last 8 years of backtesting. MQL is just modified C++ language and is limited in what it truly can provide.

Piplite works best as an anti-trend trader. You can set it to trade with the trend as well. My recommendations are to test/backtest Piplite in a forward environment on a demo account to truly check it's performance. If you need to backtest, go for 6 months, maybe a year but not more.

Happy Trading

v/r

Reason: