CFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. -- % of retail investor accounts lose money when trading CFDs with this provider. You should consider whether you understand how CFDs work and whether you can afford to take the high risk of losing your money.

MTW - WalkTheTalk

Hi @WalkTheTalk
Our pleasure to welcome you here.

Thank you for this introduction, and for your kind words!

I take the freedom to put here the description on your DARWIN’s page, to give some additional infos to potential investors ;), since the description talks by itself! (Metrics and IAs will do the rest)

Pretty robust model, for now!! :clap:

A great success to you, and MTW!

2 Likes

Thanks for the interest!

Good spot on the worst negative excursion. It occurred recently on 2018-02-16. I was waiting for more trades to come in before I illustrate it to be an outlier, and one that will not happen again.

See this image from myfxbook that tracks the underlying.

This was due to one of my Azure VMs crashing, which has never happened in the whole of 3 years running them. It happened on a Friday and by the time I checked it on Saturday, I could not manually close the trade. Trades regardless of profit or loss would also have been brute-closed at a fixed time on Friday so none are left open intentionally over the weekend.

No excuses, I was lulled into complacency and did not implement measures I had planned to:

  1. server automatically logs in when power is restored (edit registry) - if you don’t trust your VPS/VM provider, this may not be an option
  2. MT4 applications auto-run on log in (simple DOS script in startup folder)
  3. mobile notification of trade entry and exit (as an EA or indicator)

Notes:
To mitigate the issue of trust in item 1, the MT4 application can be run as a Windows service but this poses its own operational pain.
I’ll post the DOS script example and mql4 code for the mobile notification in a subsequent post.

The net result is that my stats are abnormally skewed. The average trade duration should be less than 1.5 hours. Losses are normally capped at -2% for the underlying and winners have higher upside.

Shit happens.

4 Likes

Thanks for the welcome, for posting the pictures on my behalf, and well wishes!
:+1: :smile:

1 Like

MQL4 indicator I wrote to give me simply:
Entry: Direction, Asset, Entry Price, SL, Broker
Exit: Direction, Asset, Exit Price, Pips, Broker

#property version   "1.00"
#property strict
#property indicator_chart_window

int OnInit(){
   return(INIT_SUCCEEDED);
}

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[]){

   static bool isOrderNotified = false;
   static datetime static_OrderOpenTime = 0;

   //---notify if an order opens
   if(!isOrderNotified){

      for(int i=OrdersTotal()-1; i>=0; i--){
   
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderSymbol()==_Symbol && OrderType()<2){ //do not report Pending Orders
   
            string str_OrderType = "";
            if(OrderType() == 0)str_OrderType = "Buy ";
            else str_OrderType = "Sell ";
   
            Sleep(5000); //sleep 5 seconds for the SL to be placed

            if(SendNotification(str_OrderType + OrderSymbol() + "@" + DoubleToStr(OrderOpenPrice(), Digits) + ", SL@" + DoubleToStr(OrderStopLoss(), Digits) + ", " + AccountCompany())){
               isOrderNotified = true;
               static_OrderOpenTime = OrderOpenTime();
               break; //assume 1 open order at any time for this strategy
            }   
         }
      }
   }

   //--- notify if an order closes
   else{ //if(isOrderNotified) //assumes a flip-flop state, isOrderNotified cannot be true if an order is absent, else the OrderSelect below will not work

      for(int i=OrdersHistoryTotal()-1; i>=0; i--){
   
         if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)){
            if(OrderCloseTime() < static_OrderOpenTime)break; //if last history order's OrderCloseTime is earlier than static_OrderOpenTime, exit loop
            else{ //if(OrderCloseTime() >= static_OrderOpenTime)
               if(OrderSymbol()==_Symbol && OrderType()<2){ //assumes only 1 open order at any time for the strategy
      
                  string str_OrderType = "", str_pips = "";
                  if(OrderType() == 0){
                     str_OrderType = "Buy ";
                     str_pips = DoubleToStr((OrderClosePrice() - OrderOpenPrice())/Point/10, 1);
                  }
                  else{
                     str_OrderType = "Sell ";
                     str_pips = DoubleToStr((OrderOpenPrice() - OrderClosePrice())/Point/10, 1);
                  }

                  if(SendNotification(str_OrderType + OrderSymbol() + " closed@" + DoubleToStr(OrderClosePrice(), Digits) + ", Pips: " + str_pips + ", " + AccountCompany())){
                     isOrderNotified = false;
                     static_OrderOpenTime = 0;
                     break; //assume 1 open order at any time for this strategy
                  }

               }
            }
         }
      }
   }


   return(rates_total);
}

Check ‘Enable Push Notifications’ box in the ‘Options’ -> ‘Notifications’ tab.
If we check the ‘Notify of trade transactions’ box, all trade events that occur within the Terminal Trade tab is pushed and can be excessive.

DOS batch script example executing 2 MT4 applications:

ping localhost -n 120
start "1" "C:\Users\ComputerName\Desktop\MT4 01\terminal.exe" /portable
ping localhost -n 60
start "2" "C:\Users\ComputerName\Desktop\MT4 02\terminal.exe" /portable
exit

ping localhost -n 120
pauses 120 seconds from when the batch script is run from the startup folder
start “1” “C:\Users\ComputerName\Desktop\MT4 01\terminal.exe” /portable
Executes 1st MT4
ping localhost -n 60
pauses 60 seconds from after the 1st MT4 application is executed
start “2” “C:\Users\ComputerName\Desktop\MT4 02\terminal.exe” /portable
Executes 2nd MT4
exit

Note that the “/portable” modifier is optional. I just prefer everything I need for that MT4 instance to be under 1 folder and portable.

3 Likes

Thanks for your reply. As you said, it is just one exception and you have a great score in La atribute, but it was something that always worry investors, at least at some of them (including me).

Your response makes me think in another way, so I really appreciate it.

As I said yesterday… wish you luck and I’ll keep your Darwin into my radar!

Can you explain the recent DD ? thanks you! @WalkTheTalk

There’s no change in the model, this drawdown is a reflection of the current regime.

Historically, the model has experienced such extended drawdowns.

I believe the net profitability of the model alone still exists. However, I’ll be applying some additional logic to reduce the downside volatility while retaining the upside volatility as much as possible. I’m also going to deploy an uncorrelated strategy and make this a portfolio.

The work is unending. :wink:

2 Likes

This is the backtest of the unmodified strategy as executed singly on EURUSD.


You can see it is generally inline with the actual live run. (note that the strategy executes on more than 1 pair hence the difference in overall shape)

This is the backtest of the modification.


Overall quite pleased. It will be deployed over the weekend.

Along with this, other strategies will be onboarded in the near future to make this a more diversified portfolio.

4 Likes

Thanks @WalkTheTalk :blush:

@WalkTheTalk finally, has not implemented new strategies?

@isabel03

Yes, a reworked model has been fully introduced as of 2018.11.01.
We’re looking at these metrics going forward:
Annualised Return: 15% - 24%
Annualised Volatility: 14%
Annualised Upside Volatility: 32%
Annualised Downside Volatility: 9%
Max DD%: -9.8%
Max DD duration: 200 days

Still early days to see if the stationarity holds out but we’ll know as it progresses.

Development ever ongoing. Significant changes starting 2019.08.23. Just time-stamping this here.

1 Like

@WalkTheTalk Could you detail those changes? I have seen that you have substantially increased equity, a good sign

2 Likes

@isabel03 Thanks for the interest. We’ve begun the process of running a basket of uncorrelated strategies instead of reserving one Darwin per strategy. This should give us more leeway to optimise the returns as a portfolio.

1 Like

The work put in since Sep 2019 till date has begun to bear fruit. 2 new DARWINS, PWS and PWG, have been created to show the new framework’s results separate from the pre-2020 framework.

If investors are interested in allocating, please do so in PWS instead of PWG and MTW.

MTW will likely at some point be closed to investors as it will be used as a live strategy onboarding/testing account. PWG’s underlying account has an aggressively optimised risk setting, and although the 10% Monthly VaR risk parity for all DARWINs should make its DARWIN’s return be similar to PWS, I cannot guarantee this. Current investors in MTW and PWG, kindly reallocate your funds to PWS.

5 Likes

Hey @WalkTheTalk :slight_smile:

Just been reading through your thread again today and would like to firstly thank you for some excellent contributions you’ve made over time - much appreciated :pray:

Always great to see a fellow trader engaging in process… would you be keen to share a bit about your R&D methods / process in a casual interview directly with me?

I think everyone would find your contributions valuable and we’d be grateful here at Darwinex for the content you’d generate in the process :slight_smile:

What do you say?

Cheers!

Hi @integracore2,

Sure, let me know what you need and I’ll try to accommodate. How do we communicate?

Felt this needed putting on record. At the very least, it will serve as a note for my future self who will have adjusted to a new normal and be able to read this with the benefit of hindsight.

A new regime is in play as the global COVID-19 pandemic hammers equity markets and forces us to change how we behave; from remote working and the way we consume services, to how we greet each other and press lift buttons.

In just March alone, the S&P 500 is down 20%, FTSE 100 is down 25%, Euro Stoxx 50 down 28%, Hang Seng 50 down 17%, Nikkei 225 down 22%, and Brent down 50%(albeit largely due to Russia rejecting a proposed production cut with OPEC).

EURUSD and USDJPY have had a roller coaster peak-to-trough ride of 850 pips and 1000 pips respectively, and GBPUSD having a staggering 1780-pip move. The net drop of 1300 pips of GBPUSD since the start of the month (-10%) further amplifies the drop of UK equities if benchmarked against the USD.

One take-home is that this presents an amazing buying opportunity. A veritable certainty is that businesses and borders re-open. Since 1957, the S&P 500 has had an annualised growth of 8% even factoring all the recessions since then. Rather than timing the bottom, there’s a current effective 20-40% discount on global equities. A long-term investment idea would be to buy a low-cost, unlevered S&P ETF, now. The passive investment would be doing better than 8% annually over the next 10 years.
(Again, this is for myself and not to be construed as an inducement to trade or as financial advice, do your own due diligence.)

On the active trading front, the PSW portfolio has been doing well so far, I’m happy with the underlying strategy’s returns of 4.84% from the start of the year till now(2020.03.24), particularly so given the current climate. Under the 10% VaR risk sizing, its DARWIN’s return is amplified at 19.63%. While this is good, I have slight reservations on position sizing required for these returns. At some point, I may allocate to the DARWIN itself when I’m convinced it’s a superior risk model to the one I operate.

Gonna re-read this in June and hopefully not cringe.

2 Likes

Now might be a good time to short air carriers.

After taking a 90% hit to their revenue, apart from fixed costs draining their cash reserves, most will face cash flow issues from maturing bonds that they cannot roll as no one in their right mind would buy the new ones. The only way forward would have to be heavily-discounted rights issue to tide over this period, and the dilution of share value to existing holders. This is likely to happen very soon.

An ironic matter is that a carrier which had hedged their fuel risk would be in even more dire straits as aviation fuel has dropped rapidly and by a large amount, 50%. Collateral has to be posted to their counterparty, and locked up until the forwards are settled or until prices go back up (most being marked-to-market on a daily basis). This further exacerbates their current negative cash flow. The more they had hedged, the worse they would be in now.


National carriers would likely be bailed out by their governments, but it will be a tough time staying afloat for smaller/budget carriers. Anticipate many to fold.

Following up on my post on 24 Mar:

What was initially posted as a passive investment in a low-cost, unlevered S&P ETF targeting 8% per annum across 10 years has opportunely yielded close to 32% (740/2340) in a span of 70 days.

Fundamentals have been thrown out the window and I sense it’s going to end in tears. Putting it on record here that it’s prudent to pare 80% or exit the position entirely.

On the FX front, PWS continues to perform reasonably well at 17.61% YTD.

Notes:

  1. MTW has been and will continue to be used for onboarding strategies so it is advised to allocate to PWS instead of MTW.
  2. “Trader’s equity” in PWS and PWG will be pared down to $1250 on a regular basis.
1 Like