code: def test_stoch(self):
      # TV Correlation
      result = pandas_ta.stoch(self.high, self.low, self.close)
      self.assertIsInstance(result, DataFrame)
      self.assertEqual(result.name, "STOCH_14_3_3")
  
      try:
          expected = tal.STOCH(
              self.high, self.low, self.close, 14, 3, 0, 3, 0
          )
          expecteddf = DataFrame(
              {
                  "STOCHk_14_3_0_3_0": expected[0],
                  "STOCHd_14_3_0_3": expected[1],
              }
          )
          pdt.assert_frame_equal(result, expecteddf)
      except AssertionError:
          try:
              stochk_corr = pandas_ta.utils.df_error_analysis(
                  result.iloc[:, 0],
                  expecteddf.iloc[:, 0],
                  col=CORRELATION,
              )
              self.assertGreater(stochk_corr, CORRELATION_THRESHOLD)
          except Exception as ex:
              error_analysis(result.iloc[:, 0], CORRELATION, ex)
  
          try:
              stochd_corr = pandas_ta.utils.df_error_analysis(
                  result.iloc[:, 1],
                  expecteddf.iloc[:, 1],
                  col=CORRELATION,
              )
              self.assertGreater(stochd_corr, CORRELATION_THRESHOLD)
          except Exception as ex:
              error_analysis(
                  result.iloc[:, 1], CORRELATION, ex, newline=False
              )
  
imports: from .config import error_analysis, sample_data, CORRELATION, CORRELATION_THRESHOLD, VERBOSE
  from .context import pandas_ta
  from unittest import TestCase, skip
  import pandas.testing
  from pandas import DataFrame, Series
  import talib
label_desc: Use image node_id 45 for calling the TestMomentum obj's underlying member method code with example usage: obj.test_stoch() without return types