code: def test_Sign(self):
      field = "Sign($close-Ref($close, 1))"
      result = ExpressionD.expression(
          self.instrument,
          field,
          self.start_time,
          self.end_time,
          self.freq,
      )
      result = result.to_numpy()
      prev_close = self.mock_df["close"].shift(1)
      close = self.mock_df["close"]
      change = close - prev_close
      change[change > 0] = 1.0
      change[change < 0] = -1.0
      golden = change.to_numpy()
      self.assertIsNone(np.testing.assert_allclose(result, golden))
  
file_path: qlib/tests/ops/test_elem_operator.py
imports: import unittest
  import numpy
  import pytest
  from qlib.data import DatasetProvider
  from qlib.data.data import ExpressionD
  from qlib.tests import TestOperatorData, TestMockData, MOCK_DF
  from qlib.config import C
label_desc: Use image node_id 3 for calling the TestElementOperator obj's underlying member method code with example usage: obj.test_Sign() without return types