Click to Move script problem

Hello guys i need your help. I have just started scripting in c# and whole unity engine is new for me. Can someone help me with my click to move script? I followed this tutorial Unity3D: RPG Tutorial (Diablo Style) Session 1(Updated Version): Click To Move - YouTube but my “character” doesnt move towards location. Hers is code :
using UnityEngine;
using System.Collections;

public class movement2 : MonoBehaviour {
	public float speed;
	public CharacterController controller;
	private Vector3 position;
	
	// Use this for initialization
	void Start () {
	}
	
	// Update is called once per frame
	void Update () {
		if (Input.GetMouseButton (0)) 
		{
			locatePosition();
		}
		
		moveToPosition();
		
	}
	
	void locatePosition()
	{
		RaycastHit hit;
		Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
		
		if (Physics.Raycast (ray, out hit, 1000)) 
		{
			position = new Vector3(hit.point.x, hit.point.y, hit.point.z);
			Debug.Log(position);
			
			
		}
		
	}
	
	void moveToPosition(){

			
			Quaternion newRotation = Quaternion.LookRotation(position-transform.position, Vector3.forward);
			
			newRotation.x = 0f;
			newRotation.z = 0f;
			
			transform.rotation = Quaternion.Slerp(transform.rotation, newRotation, Time.deltaTime * 10);
			controller.SimpleMove(transform.forward * speed);

	}
}

Thank you for all help.

Hi
try using

 controller.SimpleMove((position - transform.position) * speed);

It will move the object towards the target with respect to its realtive position