code: def new_transaction(self, timeout=120, durability=1, type=TWO_PHASE):
          
          return self.transaction_manager.new_transaction(timeout, durability, type)
docs: Creates a new :class:`~hazelcast.transaction.Transaction` associated with the current thread using default or given options.
  
          :param timeout: (long), the timeout in seconds determines the maximum lifespan of a transaction. So if a
              transaction is configured with a timeout of 2 minutes, then it will automatically rollback if it hasn't
              committed yet.
          :param durability: (int), the durability is the number of machines that can take over if a member fails during a
          transaction commit or rollback
          :param type: (Transaction Type), the transaction type which can be :const:`~hazelcast.transaction.TWO_PHASE` or :const:`~hazelcast.transaction.ONE_PHASE`
          :return: (:class:`~hazelcast.transaction.Transaction`), new Transaction associated with the current thread.