def negative_directional_movement(high_data, low_data):
catch_errors.check_for_input_len_diff(high_data, low_data)<EOL>up_moves = calculate_up_moves(high_data)<EOL>down_moves = calculate_down_moves(low_data)<EOL>ndm = []<EOL>for idx in range(<NUM_LIT:0>, len(down_moves)):<EOL><INDENT>if down_moves[idx] > up_moves[idx] and down_moves[idx] > <NUM_LIT:0>:<EOL><INDENT>ndm.append(down_moves[idx])<EOL><DEDENT>else:<EOL><INDENT>ndm.append(<NUM_LIT:0>)<EOL><DEDENT><DEDENT>return ndm<EOL>
Negative Directional Movement (-DM).


-DM: if DWNMOVE > UPMOVE and DWNMOVE > 0 then -DM = DWNMOVE else -Dm = 0