Unir varios bucles for

Buenas noches.
necesito crear colores determinados con un led RGB smd 5050 y que lo haga de manera creciente o decreciente durante un tiempo que controlare con un FADETIME.
El caso es que si hago 3 bucles “for”, uno para el rojo, otro para el verde y otro para el azul y coloco el FADE al final de cada bucle, 1º me incrementa el rojo, luego el verde y luego el azul y si coloco el FADE al final del 3º bucle, el cambio de color no me lo hace con el incremento.

He pensado unir los 3 bucles en uno y así colocar el FADE como si fuese un solo bucle.
La idea me ha quedado así:

for (( w = 0; w <= 125; w++) && ( r = 255; r >= 150; r–) && ( g = 255; g <= 194; g–) && ( b = 255; b <= 38; b–)) {

analogWrite((WHITEPIN, w) && (REDPIN, r) && (GREENPIN, g) && (BLUEPIN, b));
delay(FADETIME);
}

No se si es correcta esta expresión, ademas me da el siguiente error al compilar y no veo donde me falta el ‘)’:

exit status 1
expected ‘)’ before ‘;’ token

Podeis ayudarme o darme alguna idea nueva?
espero haberme explicado bien. Muchas gracias a todos

@sergioara. Hay algo que no va a funcionar con ese loop. Fijate que los rangos de cada variable dentro del for() son distintos, por lo cual es imposible que se cumpla ( w tiene 125 pasos, r tiene 105, g tiene 61 y b tiene 217 ). Obviamente luego de 61 ciclos del for() ya no se van a cumplir todas las condiciones para continuary va a salir. Nunca hice un for con varias condiciones y no tengo claro que sea posible pero seguro que asi no va a funcionar. Tendrías que hacer un ciclo for() y dentro de él una ecuación para cada color, ya que no se modifican todos al mismo ritmo.
Por otro lado lee las reglas del foro y editá correctamente tu posteo.