Conditional horizontal line color

Currently I input my various levels into ToS and then my script plots them. I'd like them to change colors based on bar close Over/under. How would I do that? I dont know much think script. I feel like I dont need as many lines as I have for my code.

I'd like it to just be Input levels and then the script figures if it is now acting as support or res now.

input resistance1 = 0;
input resistance2 = 0;
input resistance3 = 0;
input resistance4 = 0;
input resistance5 = 0;
input resistance6 = 0;
input resistance7 = 0;
input resistance8 = 0;
input resistance9 = 0;
input resistance10 = 0;
input support1 = 0;
input support2 = 0;
input support3 = 0;
input support4 = 0;
input support5 = 0;
input support6 = 0;
input support7 = 0;
input support8 = 0;
input support9 = 0;
input support10 = 0;
plot line_1 = resistance1; line_1.SetDefaultColor(Color.red);
plot line_2 = resistance2; line_2.SetDefaultColor(Color.red);
plot line_3 = resistance3; line_3.SetDefaultColor(Color.red);
plot line_4 = resistance4; line_4.SetDefaultColor(Color.red);
plot line_5 = resistance5; line_5.SetDefaultColor(Color.red);
plot line_6 = resistance6; line_6.SetDefaultColor(Color.red);
plot line_7 = resistance7; line_7.SetDefaultColor(Color.red);
plot line_8 = resistance8; line_8.SetDefaultColor(Color.red);
plot line_9 = resistance9; line_9.SetDefaultColor(Color.red);
plot line_10 = resistance10; line_10.SetDefaultColor(Color.red);
plot line_11 = support1; line_11.SetDefaultColor(Color.blue);
plot line_12 = support2; line_12.SetDefaultColor(Color.blue);
plot line_13 = support3; line_13.SetDefaultColor(Color.blue);
plot line_14 = support4; line_14.SetDefaultColor(Color.blue);
plot line_15 = support5; line_15.SetDefaultColor(Color.blue);
plot line_16 = support6; line_16.SetDefaultColor(Color.blue);
plot line_17 = support7; line_17.SetDefaultColor(Color.blue);
plot line_18 = support8; line_18.SetDefaultColor(Color.blue);
plot line_19 = support9; line_19.SetDefaultColor(Color.blue);
plot line_20 = support10; line_20.SetDefaultColor(Color.blue);

1 Answer

input price = close;
input KeyLevel_1 = 0;
input KeyLevel_2 = 0;
input KeyLevel_3 = 0;
input KeyLevel_4 = 0;
input KeyLevel_5 = 0;
input KeyLevel_6 = 0;
input KeyLevel_7 = 0;
input KeyLevel_8 = 0;
input KeyLevel_9 = 0;
input KeyLevel_10 = 0;
input KeyLevel_11 = 0;
input KeyLevel_12 = 0;
input KeyLevel_13 = 0;
input KeyLevel_14 = 0;
input KeyLevel_15 = 0;
input KeyLevel_16 = 0;
input KeyLevel_17 = 0;
input KeyLevel_18 = 0;
input KeyLevel_19 = 0;
input KeyLevel_20 = 0;
plot Line1 = KeyLevel_1;
plot Line2 = KeyLevel_2;
plot Line3 = KeyLevel_3;
plot Line4 = KeyLevel_4;
plot Line5 = KeyLevel_5;
plot Line6 = KeyLevel_6;
plot Line7 = KeyLevel_7;
plot Line8 = KeyLevel_8;
plot Line9 = KeyLevel_9;
plot Line10 = KeyLevel_10;
plot Line11 = KeyLevel_11;
plot Line12 = KeyLevel_12;
plot Line13 = KeyLevel_13;
plot Line14 = KeyLevel_14;
plot Line15 = KeyLevel_15;
plot Line16 = KeyLevel_16;
plot Line17 = KeyLevel_17;
plot Line18 = KeyLevel_18;
plot Line19 = KeyLevel_19;
plot Line20 = KeyLevel_20;
Line1.AssignValueColor(if KeyLevel_1 > price then Color.GREEN else Color.RED);
Line2.AssignValueColor(if KeyLevel_2 > price then Color.GREEN else Color.RED);
Line3.AssignValueColor(if KeyLevel_3 > price then Color.GREEN else Color.RED);
Line4.AssignValueColor(if KeyLevel_4 > price then Color.GREEN else Color.RED);
Line5.AssignValueColor(if KeyLevel_5 > price then Color.GREEN else Color.RED);
Line6.AssignValueColor(if KeyLevel_6 > price then Color.GREEN else Color.RED);
Line7.AssignValueColor(if KeyLevel_7 > price then Color.GREEN else Color.RED);
Line8.AssignValueColor(if KeyLevel_8 > price then Color.GREEN else Color.RED);
Line9.AssignValueColor(if KeyLevel_9 > price then Color.GREEN else Color.RED);
Line10.AssignValueColor(if KeyLevel_10 > price then Color.GREEN else Color.RED);
Line11.AssignValueColor(if KeyLevel_11 > price then Color.GREEN else Color.RED);
Line12.AssignValueColor(if KeyLevel_12 > price then Color.GREEN else Color.RED);
Line13.AssignValueColor(if KeyLevel_13 > price then Color.GREEN else Color.RED);
Line14.AssignValueColor(if KeyLevel_14 > price then Color.GREEN else Color.RED);
Line15.AssignValueColor(if KeyLevel_15 > price then Color.GREEN else Color.RED);
Line16.AssignValueColor(if KeyLevel_16 > price then Color.GREEN else Color.RED);
Line17.AssignValueColor(if KeyLevel_17 > price then Color.GREEN else Color.RED);
Line18.AssignValueColor(if KeyLevel_18 > price then Color.GREEN else Color.RED);
Line19.AssignValueColor(if KeyLevel_19 > price then Color.GREEN else Color.RED);
Line20.AssignValueColor(if KeyLevel_20 > price then Color.GREEN else Color.RED);
Line1.SetHiding(if KeyLevel_1 == 0 then yes else no);
Line2.SetHiding(if KeyLevel_2 == 0 then yes else no);
Line3.SetHiding(if KeyLevel_3 == 0 then yes else no);
1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

You Might Also Like