code: def testMACDEXT(self):
      barDs = self.__loadBarDS()
      self.assertAmountsAreEqual(
          indicator.MACDEXT(
              barDs.getCloseDataSeries(),
              252,
              12,
              talib.MA_Type.EMA,
              26,
              talib.MA_Type.EMA,
              9,
              talib.MA_Type.EMA,
          )[0][33],
          -1.9738,
      )
      self.assertAmountsAreEqual(
          indicator.MACDEXT(
              barDs.getCloseDataSeries(),
              252,
              12,
              talib.MA_Type.EMA,
              26,
              talib.MA_Type.EMA,
              9,
              talib.MA_Type.EMA,
          )[1][33],
          -2.7071,
      )
      self.assertAmountsAreEqual(
          indicator.MACDEXT(
              barDs.getCloseDataSeries(),
              252,
              12,
              talib.MA_Type.EMA,
              26,
              talib.MA_Type.EMA,
              9,
              talib.MA_Type.EMA,
          )[2][33],
          (-1.9738) - (-2.7071),
      )
  
imports: import datetime
  import talib
  from six.moves import xrange
  from .None import common
  from pyalgotrade.talibext import indicator
  from pyalgotrade import bar
  from pyalgotrade import dataseries
  from pyalgotrade.dataseries import bards
label_desc: Use image node_id 29 for calling the TestCase obj's underlying member method code with example usage: obj.testMACDEXT() without return types