Casey James
Casey James

Reputation: 17

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);

Upvotes: 0

Views: 122

Answers (1)

Casey James
Casey James

Reputation: 17

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);

Upvotes: 0

Related Questions