Awesome - original version

The place for Peaky and Peaky-related stuff.
Post Reply
Zennor
Trader
Posts: 276
Joined: Fri Feb 08, 2013 4:44 pm
Location: On a Canal Boat travelling the waterways.

Awesome

Post by Zennor »

sugardaddy » Sun Jul 30, 2017 1:08 pm wrote:Thanks these first tests looks great and very promising!

Just wondering regarding those trade examples. Did you don't use any
safety stoploss at all?


thanks,

Pete
Ooops.. Get your crash helmet on buddy, me thinks you are going to need it.. :shock:

Great job Steve and TJF some really neat ideas here.. Really looking forward to testing the basket set as this is what I'm doing on POS with 16% profit in 5.5 trading days...
luke
Trader
Posts: 17
Joined: Fri Aug 14, 2015 7:03 am

Awesome

Post by luke »

sugardaddy » Sun Jul 30, 2017 1:08 pm wrote: Just wondering regarding those trade examples. Did you don't use any
safety stoploss at all?
Pete - rookie mistake dude. Steve doesn't recommend a stop loss (see user manual). Also this is using Peaky which Steve has mentioned in that user manual that trading with a stop kills the method.

There are other things that can be done to handle trades going against you. Steve has coded a recovery function in the EA or you could hedge or take manual control or trade a smaller initial size.
User avatar
TraderJoeForex
Trader
Posts: 1157
Joined: Fri Mar 08, 2013 10:29 pm
Location: South London

Awesome

Post by TraderJoeForex »

Hey all.. I would suggest demoing the 3 set files in post 1 as a starting point this week. They will give you a feel for the different ways in which Awesome can trade.

The combination of highertimeframe Peak HiLo and D1 Superslope provide a very solid indication of the long term direction in which price is heading. However there will also be deep pullbacks against this direction since we are looking at D1 and above. These pullbacks provide the opportunities for Awesome to average into a position in any number of ways.

Steve has outdone himself yet again with this bot! There is so much flexibility built in so I look forwards to seeing lots of test results so we can learn from our collective data. I would suggest just changing one setting at a time from the initial set files to evaluate what does or does not offer an advantage. Once you have evaluated this for yourself you will then have something valuable to post which may help the rest of us.

Have fun this week :smile:
User avatar
SteveHopwood
Owner
Posts: 9904
Joined: Tue Nov 15, 2011 8:43 am
Location: Misterton - an insignificant village in England. Very pleasant to live in.

Awesome

Post by SteveHopwood »

Sorry folks. I assumed the code was fine because Awesome worked so well last week, but Gary has just sent me a pm. He is working on a FIFO-compliant version and spotted some bloops - some missing array initialising and use of 'Bid' instead of 'bid'. Fixed in post 1. Thanks Gary. :clap: :clap: :clap: :clap: :clap:

Easy for the DIYers. Do a search for:
int tfTotal = 0;//The number of time frames being traded.

Then copy this over the top of the four code blocks of code that follow:

Code: Select all

   //Trade1
   if (TradeTF1)
   {
      TimeFrames[tfTotal] = Trade1TimeFrame;
      TradeBuffers[tfTotal] = Trade1BufferPips;
      MagicNumbers[tfTotal] = Trade1MagicNumber;
      TradeComments[tfTotal] = Trade1TradeComment;
      TakeProfits[tfTotal] = Trade1TakeProfitPips;
      StopLosses[tfTotal] = Trade1StopLossPips;
      PositiveSwapOnly[tfTotal] = Trade1PositiveSwapTradesOnly;
      TradeLots[tfTotal] = Trade1Lot;
      TradeLotsPerDollop[tfTotal] = Trade1LotsPerDollopOfCash;
      TradeSizeOfDollop[tfTotal] = Trade1SizeOfDollop;
      TradeUseBalance[tfTotal] = Trade1UseBalance;
      TradeUseEquity[tfTotal] = Trade1UseEquity;
      ImmediateMarketTrades[tfTotal] = Trade1ImmediateMarketOrder;
      UseRecovery[tfTotal] = Trade1UseRecovery;
      TradesToConstituteRecovery[tfTotal] = Trade1TradesToConstituteRecovery;
      RecoveryProfitPips[tfTotal] = Trade1RecoveryProfitPips;
      TradeAsBasket[tfTotal] = Trade1AsBasket;
      TradeBasketCashTarget[tfTotal] = Trade1BasketCashTarget;
      TradeBasketCashPercentageTarget[tfTotal] = Trade1BasketCashPercentageTarget;
      UseBreakEven[tfTotal] = Trade1UseBreakEven;
      BreakEvenPips[tfTotal] = Trade1BreakEvenPips;
      BreakEvenProfitPips[tfTotal] = Trade1BreakEvenProfitPips;
      UseJumpingStop[tfTotal] = Trade1UseJumpingStop;
      JumpingStopPips[tfTotal] = Trade1JumpingStopPips;
      JumpAfterBreakEvenOnly[tfTotal] = Trade1JumpAfterBreakevenOnly;
            
      tfTotal++;
   }//if (TradeTF1)
   


   if (TradeTF2)
   {
      TimeFrames[tfTotal] = Trade2TimeFrame;
      TradeBuffers[tfTotal] = Trade2BufferPips;
      MagicNumbers[tfTotal] = Trade2MagicNumber;
      TradeComments[tfTotal] = Trade2TradeComment;
      TakeProfits[tfTotal] = Trade2TakeProfitPips;
      StopLosses[tfTotal] = Trade2StopLossPips;
      PositiveSwapOnly[tfTotal] = Trade2PositiveSwapTradesOnly;
      TradeLots[tfTotal] = Trade2Lot;
      TradeLotsPerDollop[tfTotal] = Trade2LotsPerDollopOfCash;
      TradeSizeOfDollop[tfTotal] = Trade2SizeOfDollop;
      TradeUseBalance[tfTotal] = Trade2UseBalance;
      TradeUseEquity[tfTotal] = Trade2UseEquity;
      ImmediateMarketTrades[tfTotal] = Trade2ImmediateMarketOrder;
      UseRecovery[tfTotal] = Trade2UseRecovery;
      TradesToConstituteRecovery[tfTotal] = Trade2TradesToConstituteRecovery;
      RecoveryProfitPips[tfTotal] = Trade2RecoveryProfitPips;
      TradeAsBasket[tfTotal] = Trade2AsBasket;
      TradeBasketCashTarget[tfTotal] = Trade2BasketCashTarget;
      TradeBasketCashPercentageTarget[tfTotal] = Trade2BasketCashPercentageTarget;
      UseBreakEven[tfTotal] = Trade2UseBreakEven;
      BreakEvenPips[tfTotal] = Trade2BreakEvenPips;
      BreakEvenProfitPips[tfTotal] = Trade2BreakEvenProfitPips;
      UseJumpingStop[tfTotal] = Trade2UseJumpingStop;
      JumpingStopPips[tfTotal] = Trade2JumpingStopPips;
      JumpAfterBreakEvenOnly[tfTotal] = Trade2JumpAfterBreakevenOnly;

      tfTotal++;
   }//if (TradeTF2)
   
   //Trade3
   if (TradeTF3)
   {
      TimeFrames[tfTotal] = Trade3TimeFrame;
      TradeBuffers[tfTotal] = Trade3BufferPips;
      MagicNumbers[tfTotal] = Trade3MagicNumber;
      TradeComments[tfTotal] = Trade3TradeComment;
      TakeProfits[tfTotal] = Trade3TakeProfitPips;
      StopLosses[tfTotal] = Trade3StopLossPips;
      PositiveSwapOnly[tfTotal] = Trade3PositiveSwapTradesOnly;
      TradeLots[tfTotal] = Trade3Lot;
      TradeLotsPerDollop[tfTotal] = Trade3LotsPerDollopOfCash;
      TradeSizeOfDollop[tfTotal] = Trade3SizeOfDollop;
      TradeUseBalance[tfTotal] = Trade3UseBalance;
      TradeUseEquity[tfTotal] = Trade3UseEquity;
      ImmediateMarketTrades[tfTotal] = Trade3ImmediateMarketOrder;
      UseRecovery[tfTotal] = Trade3UseRecovery;
      TradesToConstituteRecovery[tfTotal] = Trade3TradesToConstituteRecovery;
      RecoveryProfitPips[tfTotal] = Trade3RecoveryProfitPips;
      TradeAsBasket[tfTotal] = Trade3AsBasket;
      TradeBasketCashTarget[tfTotal] = Trade3BasketCashTarget;
      TradeBasketCashPercentageTarget[tfTotal] = Trade3BasketCashPercentageTarget;
      UseBreakEven[tfTotal] = Trade3UseBreakEven;
      BreakEvenPips[tfTotal] = Trade3BreakEvenPips;
      BreakEvenProfitPips[tfTotal] = Trade3BreakEvenProfitPips;
      UseJumpingStop[tfTotal] = Trade3UseJumpingStop;
      JumpingStopPips[tfTotal] = Trade3JumpingStopPips;
      JumpAfterBreakEvenOnly[tfTotal] = Trade3JumpAfterBreakevenOnly;

      tfTotal++;
   }//if (TradeTF3)
   
   //Trade4
   if (TradeTF4)
   {
      TimeFrames[tfTotal] = Trade4TimeFrame;
      TradeBuffers[tfTotal] = Trade4BufferPips;
      MagicNumbers[tfTotal] = Trade4MagicNumber;
      TradeComments[tfTotal] = Trade4TradeComment;
      TakeProfits[tfTotal] = Trade4TakeProfitPips;
      StopLosses[tfTotal] = Trade4StopLossPips;
      PositiveSwapOnly[tfTotal] = Trade4PositiveSwapTradesOnly;
      TradeLots[tfTotal] = Trade4Lot;
      TradeLotsPerDollop[tfTotal] = Trade4LotsPerDollopOfCash;
      TradeSizeOfDollop[tfTotal] = Trade4SizeOfDollop;
      TradeUseBalance[tfTotal] = Trade4UseBalance;
      TradeUseEquity[tfTotal] = Trade4UseEquity;
      ImmediateMarketTrades[tfTotal] = Trade4ImmediateMarketOrder;
      UseRecovery[tfTotal] = Trade4UseRecovery;
      TradesToConstituteRecovery[tfTotal] = Trade4TradesToConstituteRecovery;
      RecoveryProfitPips[tfTotal] = Trade4RecoveryProfitPips;
      TradeAsBasket[tfTotal] = Trade4AsBasket;
      TradeBasketCashTarget[tfTotal] = Trade4BasketCashTarget;
      TradeBasketCashPercentageTarget[tfTotal] = Trade4BasketCashPercentageTarget;
      UseBreakEven[tfTotal] = Trade4UseBreakEven;
      BreakEvenPips[tfTotal] = Trade4BreakEvenPips;
      BreakEvenProfitPips[tfTotal] = Trade4BreakEvenProfitPips;
      UseJumpingStop[tfTotal] = Trade4UseJumpingStop;
      JumpingStopPips[tfTotal] = Trade4JumpingStopPips;
      JumpAfterBreakEvenOnly[tfTotal] = Trade4JumpAfterBreakevenOnly;

      tfTotal++;
   }//if (TradeTF4)
Then go to OnTimer() and do a Match Case for 'Bid' and replace the upper case 'B' with lower case 'b' so the variable becomes 'bid'.

:xm:
Read the effing manual, ok?

Afterprime is the official SHF broker. Read about them at https://www.stevehopwoodforex.com/phpBB3/viewtopic.php?p=175790#p175790.

I still suffer from OCCD. Good thing, really.

Anyone here feeling generous? My paypal account is always in the market for a tiny donation. pianodoodler@hotmail.com is the account.

To see The Weekly Roundup of stuff you guys might have missed Click here

My special thanks to Thomas (tomele) for all the incredible work he does here.
sugardaddy
Trader
Posts: 16
Joined: Wed Oct 19, 2016 2:10 pm

Awesome

Post by sugardaddy »

ok thank you for all your explanation(s) guys! and Steve thank you for your great work!

wow getting a shortage of vps'es this way with all this great systems to test :)
User avatar
Wapen
Trader
Posts: 91
Joined: Tue Nov 29, 2011 7:24 pm
Location: Gauteng, South Africa

Awesome

Post by Wapen »

Hi Steve & LJF,

There are a view new toys that I had a look at, But this one is definatly going on to a test. :clap:
sukhen
Posts: 1
Joined: Wed Nov 23, 2011 6:15 am

Awesome

Post by sukhen »

sugardaddy » Mon Jul 31, 2017 5:41 am wrote:ok thank you for all your explanation(s) guys! and Steve thank you for your great work!

wow getting a shortage of vps'es this way with all this great systems to test :)
Hi,
I don't know much about free VPSs but I am posting 2 links that may point to something. Honestly, I have not tried how to go about these. If you find out, kindly explain how to set it up in simple language
http://voskrbs.ru/segnali-forex-giornal ... -owncloud/
and
https://www.youtube.com/watch?v=zqORpKde29Q and you may use Amazon Cloud Services for Free
at https://aws.amazon.com/marketplace/pp/B014R3DC64

A cheaper option is available at https://webappzlive.com/kvm-linux-ssd-vps/ (also Windows systems are available, slightly more expensive)

Wish these can help our community

- Sukhen
User avatar
eaymon
Trader
Posts: 187
Joined: Wed Dec 16, 2015 3:18 pm

Awesome

Post by eaymon »

sukhen » Mon Jul 31, 2017 2:13 am wrote:
sugardaddy » Mon Jul 31, 2017 5:41 am wrote:ok thank you for all your explanation(s) guys! and Steve thank you for your great work!

wow getting a shortage of vps'es this way with all this great systems to test :)
Hi,
I don't know much about free VPSs but I am posting 2 links that may point to something. Honestly, I have not tried how to go about these. If you find out, kindly explain how to set it up in simple language
http://voskrbs.ru/segnali-forex-giornal ... -owncloud/
and
https://www.youtube.com/watch?v=zqORpKde29Q and you may use Amazon Cloud Services for Free
at https://aws.amazon.com/marketplace/pp/B014R3DC64

A cheaper option is available at https://webappzlive.com/kvm-linux-ssd-vps/ (also Windows systems are available, slightly more expensive)

Wish these can help our community

- Sukhen
I use vultr.com's $5 a month boxes with a custom windows XP image and run it on each machine.

they have a $2.50 a month box but I haven't tested those. I don't think you can get cheaper than these!
Last edited by eaymon on Mon Jul 31, 2017 2:41 pm, edited 1 time in total.
User avatar
eaymon
Trader
Posts: 187
Joined: Wed Dec 16, 2015 3:18 pm

Awesome

Post by eaymon »

started up 3 Empty4 terminals, each with one of the three suggested set files.
I haven't implemented the fix( unless it was already updated in the file i downloaded this morning.

broker is Global Prime. I'll let you know how it goes.

eaymon
Johann
Posts: 4
Joined: Sat Sep 24, 2016 12:08 pm

Awesome

Post by Johann »

Hi all,

I have started the test this morning and I might have found a bug with the global basket closure feature.
When there is no sufficient margin to allow trading :

Code: Select all

         //Check that there is sufficient margin for trading
         if(!MarginCheck())
         {
            DisplayUserFeedback();
            return;
         }//if (!MarginCheck() )
         
then OnTimer function is left, leaving the global basket closure condition unchecked :

Code: Select all

   //Have we reached a whole platform basket target?
   if (AllTradesBelongToBasket)
   {
      if (HaveWeReachedGlobalBasketTP() )
      {
         Alert("Global profit target reached. All trades should have closed.");
         NuclearOption();
         //All trades must be closed, so keep banging away until they are.
         if (ForceTradeClosure)
         {
            while (ForceTradeClosure)
            {
               NuclearOption();
               if (ForceTradeClosure)
                  Sleep(5000);//5 seconds
            }//while (ForceTradeClosure)
            
         }//if (ForceTradeClosure)
         
      }//if (HaveWeReachedGlobalBasketTP() )
      
   
   }//if (AllTradesBelongToBasket)

Consequently, the basket closure won't work when we have a certain amount of trade open but with limited margin. Leaving the poor trades up to themselves :)

A solution would be to move the basket closure condition before the margin check. Anyone can confirm ?
I am testing this solution right now.
Last edited by Johann on Mon Jul 31, 2017 5:00 pm, edited 1 time in total.
Post Reply

Return to “Peaky forum”